# Import relevant libraries
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import plotly.graph_objects as go
import plotly.express as px
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
df = pd.read_csv('kaggle_survey_2020_responses.csv')
df.shape
C:\Users\ugonn\anaconda3\lib\site-packages\IPython\core\interactiveshell.py:3165: DtypeWarning: Columns (0) have mixed types.Specify dtype option on import or set low_memory=False. has_raised = await self.run_ast_nodes(code_ast.body, cell_name,
(20037, 355)
df.head()
| Time from Start to Finish (seconds) | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7_Part_1 | Q7_Part_2 | Q7_Part_3 | Q7_Part_4 | Q7_Part_5 | Q7_Part_6 | Q7_Part_7 | Q7_Part_8 | Q7_Part_9 | Q7_Part_10 | Q7_Part_11 | Q7_Part_12 | Q7_OTHER | Q8 | Q9_Part_1 | Q9_Part_2 | Q9_Part_3 | Q9_Part_4 | Q9_Part_5 | Q9_Part_6 | Q9_Part_7 | Q9_Part_8 | Q9_Part_9 | Q9_Part_10 | Q9_Part_11 | Q9_OTHER | Q10_Part_1 | Q10_Part_2 | Q10_Part_3 | Q10_Part_4 | Q10_Part_5 | Q10_Part_6 | Q10_Part_7 | Q10_Part_8 | Q10_Part_9 | Q10_Part_10 | Q10_Part_11 | Q10_Part_12 | Q10_Part_13 | Q10_OTHER | Q11 | Q12_Part_1 | Q12_Part_2 | Q12_Part_3 | Q12_OTHER | Q13 | Q14_Part_1 | Q14_Part_2 | Q14_Part_3 | Q14_Part_4 | Q14_Part_5 | Q14_Part_6 | Q14_Part_7 | Q14_Part_8 | Q14_Part_9 | Q14_Part_10 | Q14_Part_11 | Q14_OTHER | Q15 | Q16_Part_1 | Q16_Part_2 | Q16_Part_3 | Q16_Part_4 | Q16_Part_5 | Q16_Part_6 | Q16_Part_7 | Q16_Part_8 | Q16_Part_9 | Q16_Part_10 | Q16_Part_11 | Q16_Part_12 | Q16_Part_13 | Q16_Part_14 | Q16_Part_15 | Q16_OTHER | Q17_Part_1 | Q17_Part_2 | Q17_Part_3 | Q17_Part_4 | Q17_Part_5 | Q17_Part_6 | Q17_Part_7 | Q17_Part_8 | Q17_Part_9 | Q17_Part_10 | Q17_Part_11 | Q17_OTHER | Q18_Part_1 | Q18_Part_2 | Q18_Part_3 | Q18_Part_4 | Q18_Part_5 | Q18_Part_6 | Q18_OTHER | Q19_Part_1 | Q19_Part_2 | Q19_Part_3 | Q19_Part_4 | Q19_Part_5 | Q19_OTHER | Q20 | Q21 | Q22 | Q23_Part_1 | Q23_Part_2 | Q23_Part_3 | Q23_Part_4 | Q23_Part_5 | Q23_Part_6 | Q23_Part_7 | Q23_OTHER | Q24 | Q25 | Q26_A_Part_1 | Q26_A_Part_2 | Q26_A_Part_3 | Q26_A_Part_4 | Q26_A_Part_5 | Q26_A_Part_6 | Q26_A_Part_7 | Q26_A_Part_8 | Q26_A_Part_9 | Q26_A_Part_10 | Q26_A_Part_11 | Q26_A_OTHER | Q27_A_Part_1 | Q27_A_Part_2 | Q27_A_Part_3 | Q27_A_Part_4 | Q27_A_Part_5 | Q27_A_Part_6 | Q27_A_Part_7 | Q27_A_Part_8 | Q27_A_Part_9 | Q27_A_Part_10 | Q27_A_Part_11 | Q27_A_OTHER | Q28_A_Part_1 | Q28_A_Part_2 | Q28_A_Part_3 | Q28_A_Part_4 | Q28_A_Part_5 | Q28_A_Part_6 | Q28_A_Part_7 | Q28_A_Part_8 | Q28_A_Part_9 | Q28_A_Part_10 | Q28_A_OTHER | Q29_A_Part_1 | Q29_A_Part_2 | Q29_A_Part_3 | Q29_A_Part_4 | Q29_A_Part_5 | Q29_A_Part_6 | Q29_A_Part_7 | Q29_A_Part_8 | Q29_A_Part_9 | Q29_A_Part_10 | Q29_A_Part_11 | Q29_A_Part_12 | Q29_A_Part_13 | Q29_A_Part_14 | Q29_A_Part_15 | Q29_A_Part_16 | Q29_A_Part_17 | Q29_A_OTHER | Q30 | Q31_A_Part_1 | Q31_A_Part_2 | Q31_A_Part_3 | Q31_A_Part_4 | Q31_A_Part_5 | Q31_A_Part_6 | Q31_A_Part_7 | Q31_A_Part_8 | Q31_A_Part_9 | Q31_A_Part_10 | Q31_A_Part_11 | Q31_A_Part_12 | Q31_A_Part_13 | Q31_A_Part_14 | Q31_A_OTHER | Q32 | Q33_A_Part_1 | Q33_A_Part_2 | Q33_A_Part_3 | Q33_A_Part_4 | Q33_A_Part_5 | Q33_A_Part_6 | Q33_A_Part_7 | Q33_A_OTHER | Q34_A_Part_1 | Q34_A_Part_2 | Q34_A_Part_3 | Q34_A_Part_4 | Q34_A_Part_5 | Q34_A_Part_6 | Q34_A_Part_7 | Q34_A_Part_8 | Q34_A_Part_9 | Q34_A_Part_10 | Q34_A_Part_11 | Q34_A_OTHER | Q35_A_Part_1 | Q35_A_Part_2 | Q35_A_Part_3 | Q35_A_Part_4 | Q35_A_Part_5 | Q35_A_Part_6 | Q35_A_Part_7 | Q35_A_Part_8 | Q35_A_Part_9 | Q35_A_Part_10 | Q35_A_OTHER | Q36_Part_1 | Q36_Part_2 | Q36_Part_3 | Q36_Part_4 | Q36_Part_5 | Q36_Part_6 | Q36_Part_7 | Q36_Part_8 | Q36_Part_9 | Q36_OTHER | Q37_Part_1 | Q37_Part_2 | Q37_Part_3 | Q37_Part_4 | Q37_Part_5 | Q37_Part_6 | Q37_Part_7 | Q37_Part_8 | Q37_Part_9 | Q37_Part_10 | Q37_Part_11 | Q37_OTHER | Q38 | Q39_Part_1 | Q39_Part_2 | Q39_Part_3 | Q39_Part_4 | Q39_Part_5 | Q39_Part_6 | Q39_Part_7 | Q39_Part_8 | Q39_Part_9 | Q39_Part_10 | Q39_Part_11 | Q39_OTHER | Q26_B_Part_1 | Q26_B_Part_2 | Q26_B_Part_3 | Q26_B_Part_4 | Q26_B_Part_5 | Q26_B_Part_6 | Q26_B_Part_7 | Q26_B_Part_8 | Q26_B_Part_9 | Q26_B_Part_10 | Q26_B_Part_11 | Q26_B_OTHER | Q27_B_Part_1 | Q27_B_Part_2 | Q27_B_Part_3 | Q27_B_Part_4 | Q27_B_Part_5 | Q27_B_Part_6 | Q27_B_Part_7 | Q27_B_Part_8 | Q27_B_Part_9 | Q27_B_Part_10 | Q27_B_Part_11 | Q27_B_OTHER | Q28_B_Part_1 | Q28_B_Part_2 | Q28_B_Part_3 | Q28_B_Part_4 | Q28_B_Part_5 | Q28_B_Part_6 | Q28_B_Part_7 | Q28_B_Part_8 | Q28_B_Part_9 | Q28_B_Part_10 | Q28_B_OTHER | Q29_B_Part_1 | Q29_B_Part_2 | Q29_B_Part_3 | Q29_B_Part_4 | Q29_B_Part_5 | Q29_B_Part_6 | Q29_B_Part_7 | Q29_B_Part_8 | Q29_B_Part_9 | Q29_B_Part_10 | Q29_B_Part_11 | Q29_B_Part_12 | Q29_B_Part_13 | Q29_B_Part_14 | Q29_B_Part_15 | Q29_B_Part_16 | Q29_B_Part_17 | Q29_B_OTHER | Q31_B_Part_1 | Q31_B_Part_2 | Q31_B_Part_3 | Q31_B_Part_4 | Q31_B_Part_5 | Q31_B_Part_6 | Q31_B_Part_7 | Q31_B_Part_8 | Q31_B_Part_9 | Q31_B_Part_10 | Q31_B_Part_11 | Q31_B_Part_12 | Q31_B_Part_13 | Q31_B_Part_14 | Q31_B_OTHER | Q33_B_Part_1 | Q33_B_Part_2 | Q33_B_Part_3 | Q33_B_Part_4 | Q33_B_Part_5 | Q33_B_Part_6 | Q33_B_Part_7 | Q33_B_OTHER | Q34_B_Part_1 | Q34_B_Part_2 | Q34_B_Part_3 | Q34_B_Part_4 | Q34_B_Part_5 | Q34_B_Part_6 | Q34_B_Part_7 | Q34_B_Part_8 | Q34_B_Part_9 | Q34_B_Part_10 | Q34_B_Part_11 | Q34_B_OTHER | Q35_B_Part_1 | Q35_B_Part_2 | Q35_B_Part_3 | Q35_B_Part_4 | Q35_B_Part_5 | Q35_B_Part_6 | Q35_B_Part_7 | Q35_B_Part_8 | Q35_B_Part_9 | Q35_B_Part_10 | Q35_B_OTHER | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | Duration (in seconds) | What is your age (# years)? | What is your gender? - Selected Choice | In which country do you currently reside? | What is the highest level of formal education ... | Select the title most similar to your current ... | For how many years have you been writing code ... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming languages do you use on a reg... | What programming language would you recommend ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following integrated development ... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | Which of the following hosted notebook product... | What type of computing platform do you use mos... | Which types of specialized hardware do you use... | Which types of specialized hardware do you use... | Which types of specialized hardware do you use... | Which types of specialized hardware do you use... | Approximately how many times have you used a T... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | What data visualization libraries or tools do ... | For how many years have you used machine learn... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following machine learning framew... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which of the following ML algorithms do you us... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which categories of computer vision methods do... | Which of the following natural language proces... | Which of the following natural language proces... | Which of the following natural language proces... | Which of the following natural language proces... | Which of the following natural language proces... | Which of the following natural language proces... | What is the size of the company where you are ... | Approximately how many individuals are respons... | Does your current employer incorporate machine... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | Select any activities that make up an importan... | What is your current yearly compensation (appr... | Approximately how much money have you (or your... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following cloud computin... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Do you use any of the following machine learni... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Do you use any automated machine learning tool... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Which of the following automated machine learn... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Do you use any tools to help manage machine le... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | Where do you publicly share or deploy your dat... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | On which platforms have you begun or completed... | What is the primary tool that you use at work ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Who/what are your favorite media sources that ... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | Which of the following cloud computing platfor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following big data products (rela... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which of the following business intelligence t... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which categories of automated machine learning... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | Which specific automated machine learning tool... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... | In the next 2 years, do you hope to become mor... |
| 1 | 1838 | 35-39 | Man | Colombia | Doctoral degree | Student | 5-10 years | Python | R | SQL | C | NaN | NaN | Javascript | NaN | NaN | NaN | MATLAB | NaN | Other | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | NaN | NaN | Visual Studio Code (VSCode) | NaN | Spyder | NaN | NaN | NaN | NaN | NaN | NaN | Kaggle Notebooks | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A cloud computing platform (AWS, Azure, GCP, h... | GPUs | NaN | NaN | NaN | 2-5 times | Matplotlib | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Geoplotlib | NaN | NaN | NaN | 1-2 years | NaN | TensorFlow | Keras | NaN | NaN | NaN | Xgboost | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | NaN | Dense Neural Networks (MLPs, etc) | Convolutional Neural Networks | NaN | Recurrent Neural Networks | NaN | NaN | NaN | NaN | NaN | NaN | Image classification and other general purpose... | NaN | NaN | NaN | Word embeddings/vectors (GLoVe, fastText, word... | NaN | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | Kaggle Learn Courses | NaN | NaN | NaN | NaN | NaN | NaN | University Courses (resulting in a university ... | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | NaN | NaN | Kaggle (notebooks, forums, etc) | NaN | NaN | NaN | NaN | Journal Publications (peer-reviewed journals, ... | NaN | NaN | NaN | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | IBM Cloud / Red Hat | NaN | SAP Cloud | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Azure Cloud Services | Microsoft Azure Container Instances | Azure Functions | Google Cloud Compute Engine | Google Cloud Functions | Google Cloud Run | Google Cloud App Engine | NaN | NaN | Amazon SageMaker | Amazon Forecast | Amazon Rekognition | Azure Machine Learning Studio | Azure Cognitive Services | Google Cloud AI Platform / Google Cloud ML En... | Google Cloud Video AI | Google Cloud Natural Language | Google Cloud Vision AI | NaN | NaN | NaN | NaN | NaN | NaN | MongoDB | NaN | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | Google Cloud BigQuery | Google Cloud SQL | Google Cloud Firestore | NaN | NaN | Microsoft Power BI | Amazon QuickSight | Google Data Studio | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | SAP Analytics Cloud | NaN | NaN | Automated data augmentation (e.g. imgaug, albu... | NaN | NaN | NaN | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google C... | NaN | NaN | Google Cloud AutoML | NaN | Databricks AutoML | NaN | NaN | Auto-Keras | Auto-Sklearn | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | TensorBoard | NaN | NaN | NaN | NaN | NaN | NaN |
| 2 | 289287 | 30-34 | Man | United States of America | Master’s degree | Data Engineer | 5-10 years | Python | R | SQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | NaN | NaN | Visual Studio | NaN | PyCharm | NaN | NaN | Sublime Text | NaN | NaN | NaN | NaN | NaN | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A personal computer or laptop | GPUs | NaN | NaN | NaN | 2-5 times | Matplotlib | Seaborn | NaN | Ggplot / ggplot2 | Shiny | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 1-2 years | Scikit-learn | TensorFlow | Keras | PyTorch | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Linear or Logistic Regression | NaN | NaN | NaN | NaN | NaN | Convolutional Neural Networks | NaN | NaN | Transformer Networks (BERT, gpt-3, etc) | NaN | NaN | NaN | Image segmentation methods (U-Net, Mask R-CNN,... | NaN | Image classification and other general purpose... | NaN | NaN | NaN | NaN | NaN | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | NaN | NaN | 10,000 or more employees | 20+ | We have well established ML methods (i.e., mod... | Analyze and understand data to influence produ... | NaN | NaN | NaN | NaN | Do research that advances the state of the art... | NaN | NaN | 100,000-124,999 | $100,000 or more ($USD) | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon EC2 | AWS Lambda | NaN | NaN | NaN | Azure Functions | Google Cloud Compute Engine | NaN | NaN | NaN | NaN | NaN | Amazon SageMaker | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | PostgresSQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon Redshift | Amazon Athena | NaN | NaN | NaN | NaN | NaN | NaN | PostgresSQL | Amazon QuickSight | Microsoft Power BI | NaN | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Microsoft Power BI | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | GitHub | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | NaN | DataCamp | NaN | NaN | Udemy | NaN | NaN | NaN | NaN | NaN | Business intelligence software (Salesforce, Ta... | Twitter (data science influencers) | NaN | Reddit (r/machinelearning, etc) | Kaggle (notebooks, forums, etc) | Course Forums (forums.fast.ai, Coursera forums... | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | NaN | Blogs (Towards Data Science, Analytics Vidhya,... | NaN | Slack Communities (ods.ai, kagglenoobs, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 3 | 860 | 35-39 | Man | Argentina | Bachelor’s degree | Software Engineer | 10-20 years | NaN | NaN | NaN | NaN | NaN | Java | Javascript | NaN | NaN | Bash | NaN | NaN | NaN | R | NaN | NaN | NaN | Visual Studio Code (VSCode) | NaN | NaN | Notepad++ | Sublime Text | Vim / Emacs | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | A personal computer or laptop | NaN | NaN | None | NaN | Never | NaN | NaN | NaN | NaN | NaN | D3 js | NaN | NaN | NaN | NaN | NaN | NaN | I do not use machine learning methods | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 1000-9,999 employees | 0 | No (we do not use ML methods) | NaN | NaN | NaN | NaN | NaN | NaN | None of these activities are an important part... | NaN | 15,000-19,999 | $0 ($USD) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | edX | NaN | NaN | NaN | Udacity | Udemy | NaN | NaN | NaN | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | Email newsletters (Data Elixir, O'Reilly Data ... | NaN | Kaggle (notebooks, forums, etc) | NaN | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN |
| 4 | 507 | 30-34 | Man | United States of America | Master’s degree | Data Scientist | 5-10 years | Python | NaN | SQL | NaN | NaN | NaN | NaN | NaN | NaN | Bash | NaN | NaN | NaN | Python | NaN | NaN | NaN | NaN | PyCharm | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | A cloud computing platform (AWS, Azure, GCP, h... | NaN | NaN | None | NaN | 2-5 times | Matplotlib | Seaborn | Plotly / Plotly Express | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 3-4 years | Scikit-learn | TensorFlow | Keras | NaN | NaN | NaN | Xgboost | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Linear or Logistic Regression | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | NaN | Dense Neural Networks (MLPs, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 250-999 employees | 5-9 | We have well established ML methods (i.e., mod... | Analyze and understand data to influence produ... | NaN | NaN | Build and/or run a machine learning service th... | Experimentation and iteration to improve exist... | NaN | NaN | NaN | 125,000-149,999 | $10,000-$99,999 | Amazon Web Services (AWS) | NaN | NaN | NaN | NaN | NaN | Salesforce Cloud | NaN | NaN | NaN | NaN | NaN | Amazon EC2 | AWS Lambda | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon Redshift | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | I do not share my work publicly | NaN | Coursera | NaN | NaN | DataCamp | NaN | NaN | NaN | LinkedIn Learning | NaN | University Courses (resulting in a university ... | NaN | NaN | Local development environments (RStudio, Jupyt... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
df.dtypes.head()
Time from Start to Finish (seconds) object Q1 object Q2 object Q3 object Q4 object dtype: object
df.describe()
| Time from Start to Finish (seconds) | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7_Part_1 | Q7_Part_2 | Q7_Part_3 | Q7_Part_4 | Q7_Part_5 | Q7_Part_6 | Q7_Part_7 | Q7_Part_8 | Q7_Part_9 | Q7_Part_10 | Q7_Part_11 | Q7_Part_12 | Q7_OTHER | Q8 | Q9_Part_1 | Q9_Part_2 | Q9_Part_3 | Q9_Part_4 | Q9_Part_5 | Q9_Part_6 | Q9_Part_7 | Q9_Part_8 | Q9_Part_9 | Q9_Part_10 | Q9_Part_11 | Q9_OTHER | Q10_Part_1 | Q10_Part_2 | Q10_Part_3 | Q10_Part_4 | Q10_Part_5 | Q10_Part_6 | Q10_Part_7 | Q10_Part_8 | Q10_Part_9 | Q10_Part_10 | Q10_Part_11 | Q10_Part_12 | Q10_Part_13 | Q10_OTHER | Q11 | Q12_Part_1 | Q12_Part_2 | Q12_Part_3 | Q12_OTHER | Q13 | Q14_Part_1 | Q14_Part_2 | Q14_Part_3 | Q14_Part_4 | Q14_Part_5 | Q14_Part_6 | Q14_Part_7 | Q14_Part_8 | Q14_Part_9 | Q14_Part_10 | Q14_Part_11 | Q14_OTHER | Q15 | Q16_Part_1 | Q16_Part_2 | Q16_Part_3 | Q16_Part_4 | Q16_Part_5 | Q16_Part_6 | Q16_Part_7 | Q16_Part_8 | Q16_Part_9 | Q16_Part_10 | Q16_Part_11 | Q16_Part_12 | Q16_Part_13 | Q16_Part_14 | Q16_Part_15 | Q16_OTHER | Q17_Part_1 | Q17_Part_2 | Q17_Part_3 | Q17_Part_4 | Q17_Part_5 | Q17_Part_6 | Q17_Part_7 | Q17_Part_8 | Q17_Part_9 | Q17_Part_10 | Q17_Part_11 | Q17_OTHER | Q18_Part_1 | Q18_Part_2 | Q18_Part_3 | Q18_Part_4 | Q18_Part_5 | Q18_Part_6 | Q18_OTHER | Q19_Part_1 | Q19_Part_2 | Q19_Part_3 | Q19_Part_4 | Q19_Part_5 | Q19_OTHER | Q20 | Q21 | Q22 | Q23_Part_1 | Q23_Part_2 | Q23_Part_3 | Q23_Part_4 | Q23_Part_5 | Q23_Part_6 | Q23_Part_7 | Q23_OTHER | Q24 | Q25 | Q26_A_Part_1 | Q26_A_Part_2 | Q26_A_Part_3 | Q26_A_Part_4 | Q26_A_Part_5 | Q26_A_Part_6 | Q26_A_Part_7 | Q26_A_Part_8 | Q26_A_Part_9 | Q26_A_Part_10 | Q26_A_Part_11 | Q26_A_OTHER | Q27_A_Part_1 | Q27_A_Part_2 | Q27_A_Part_3 | Q27_A_Part_4 | Q27_A_Part_5 | Q27_A_Part_6 | Q27_A_Part_7 | Q27_A_Part_8 | Q27_A_Part_9 | Q27_A_Part_10 | Q27_A_Part_11 | Q27_A_OTHER | Q28_A_Part_1 | Q28_A_Part_2 | Q28_A_Part_3 | Q28_A_Part_4 | Q28_A_Part_5 | Q28_A_Part_6 | Q28_A_Part_7 | Q28_A_Part_8 | Q28_A_Part_9 | Q28_A_Part_10 | Q28_A_OTHER | Q29_A_Part_1 | Q29_A_Part_2 | Q29_A_Part_3 | Q29_A_Part_4 | Q29_A_Part_5 | Q29_A_Part_6 | Q29_A_Part_7 | Q29_A_Part_8 | Q29_A_Part_9 | Q29_A_Part_10 | Q29_A_Part_11 | Q29_A_Part_12 | Q29_A_Part_13 | Q29_A_Part_14 | Q29_A_Part_15 | Q29_A_Part_16 | Q29_A_Part_17 | Q29_A_OTHER | Q30 | Q31_A_Part_1 | Q31_A_Part_2 | Q31_A_Part_3 | Q31_A_Part_4 | Q31_A_Part_5 | Q31_A_Part_6 | Q31_A_Part_7 | Q31_A_Part_8 | Q31_A_Part_9 | Q31_A_Part_10 | Q31_A_Part_11 | Q31_A_Part_12 | Q31_A_Part_13 | Q31_A_Part_14 | Q31_A_OTHER | Q32 | Q33_A_Part_1 | Q33_A_Part_2 | Q33_A_Part_3 | Q33_A_Part_4 | Q33_A_Part_5 | Q33_A_Part_6 | Q33_A_Part_7 | Q33_A_OTHER | Q34_A_Part_1 | Q34_A_Part_2 | Q34_A_Part_3 | Q34_A_Part_4 | Q34_A_Part_5 | Q34_A_Part_6 | Q34_A_Part_7 | Q34_A_Part_8 | Q34_A_Part_9 | Q34_A_Part_10 | Q34_A_Part_11 | Q34_A_OTHER | Q35_A_Part_1 | Q35_A_Part_2 | Q35_A_Part_3 | Q35_A_Part_4 | Q35_A_Part_5 | Q35_A_Part_6 | Q35_A_Part_7 | Q35_A_Part_8 | Q35_A_Part_9 | Q35_A_Part_10 | Q35_A_OTHER | Q36_Part_1 | Q36_Part_2 | Q36_Part_3 | Q36_Part_4 | Q36_Part_5 | Q36_Part_6 | Q36_Part_7 | Q36_Part_8 | Q36_Part_9 | Q36_OTHER | Q37_Part_1 | Q37_Part_2 | Q37_Part_3 | Q37_Part_4 | Q37_Part_5 | Q37_Part_6 | Q37_Part_7 | Q37_Part_8 | Q37_Part_9 | Q37_Part_10 | Q37_Part_11 | Q37_OTHER | Q38 | Q39_Part_1 | Q39_Part_2 | Q39_Part_3 | Q39_Part_4 | Q39_Part_5 | Q39_Part_6 | Q39_Part_7 | Q39_Part_8 | Q39_Part_9 | Q39_Part_10 | Q39_Part_11 | Q39_OTHER | Q26_B_Part_1 | Q26_B_Part_2 | Q26_B_Part_3 | Q26_B_Part_4 | Q26_B_Part_5 | Q26_B_Part_6 | Q26_B_Part_7 | Q26_B_Part_8 | Q26_B_Part_9 | Q26_B_Part_10 | Q26_B_Part_11 | Q26_B_OTHER | Q27_B_Part_1 | Q27_B_Part_2 | Q27_B_Part_3 | Q27_B_Part_4 | Q27_B_Part_5 | Q27_B_Part_6 | Q27_B_Part_7 | Q27_B_Part_8 | Q27_B_Part_9 | Q27_B_Part_10 | Q27_B_Part_11 | Q27_B_OTHER | Q28_B_Part_1 | Q28_B_Part_2 | Q28_B_Part_3 | Q28_B_Part_4 | Q28_B_Part_5 | Q28_B_Part_6 | Q28_B_Part_7 | Q28_B_Part_8 | Q28_B_Part_9 | Q28_B_Part_10 | Q28_B_OTHER | Q29_B_Part_1 | Q29_B_Part_2 | Q29_B_Part_3 | Q29_B_Part_4 | Q29_B_Part_5 | Q29_B_Part_6 | Q29_B_Part_7 | Q29_B_Part_8 | Q29_B_Part_9 | Q29_B_Part_10 | Q29_B_Part_11 | Q29_B_Part_12 | Q29_B_Part_13 | Q29_B_Part_14 | Q29_B_Part_15 | Q29_B_Part_16 | Q29_B_Part_17 | Q29_B_OTHER | Q31_B_Part_1 | Q31_B_Part_2 | Q31_B_Part_3 | Q31_B_Part_4 | Q31_B_Part_5 | Q31_B_Part_6 | Q31_B_Part_7 | Q31_B_Part_8 | Q31_B_Part_9 | Q31_B_Part_10 | Q31_B_Part_11 | Q31_B_Part_12 | Q31_B_Part_13 | Q31_B_Part_14 | Q31_B_OTHER | Q33_B_Part_1 | Q33_B_Part_2 | Q33_B_Part_3 | Q33_B_Part_4 | Q33_B_Part_5 | Q33_B_Part_6 | Q33_B_Part_7 | Q33_B_OTHER | Q34_B_Part_1 | Q34_B_Part_2 | Q34_B_Part_3 | Q34_B_Part_4 | Q34_B_Part_5 | Q34_B_Part_6 | Q34_B_Part_7 | Q34_B_Part_8 | Q34_B_Part_9 | Q34_B_Part_10 | Q34_B_Part_11 | Q34_B_OTHER | Q35_B_Part_1 | Q35_B_Part_2 | Q35_B_Part_3 | Q35_B_Part_4 | Q35_B_Part_5 | Q35_B_Part_6 | Q35_B_Part_7 | Q35_B_Part_8 | Q35_B_Part_9 | Q35_B_Part_10 | Q35_B_OTHER | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| count | 20037 | 20037 | 20037 | 20037 | 19570 | 19278 | 19121 | 15531 | 4278 | 7536 | 3316 | 3828 | 3368 | 2996 | 263 | 199 | 1777 | 2218 | 207 | 1946 | 17822 | 11212 | 3827 | 2446 | 5874 | 5100 | 3291 | 3133 | 2453 | 1503 | 1605 | 387 | 1163 | 5993 | 6330 | 858 | 181 | 2073 | 106 | 847 | 498 | 246 | 1219 | 1232 | 395 | 5283 | 486 | 17030 | 8311 | 961 | 7892 | 667 | 16781 | 12343 | 8822 | 4131 | 4121 | 1138 | 830 | 234 | 921 | 851 | 597 | 1898 | 566 | 16375 | 10251 | 6935 | 6193 | 4190 | 743 | 219 | 3936 | 1800 | 958 | 533 | 345 | 940 | 485 | 85 | 1209 | 372 | 10561 | 8805 | 5135 | 3648 | 732 | 3365 | 5860 | 1025 | 3469 | 1299 | 737 | 411 | 2140 | 2004 | 2080 | 3513 | 1093 | 1154 | 72 | 2111 | 1515 | 558 | 1429 | 1048 | 83 | 11404 | 11283 | 11131 | 6422 | 3321 | 4008 | 2726 | 3120 | 2340 | 1754 | 523 | 10730 | 10571 | 2807 | 1706 | 2287 | 442 | 287 | 170 | 193 | 249 | 116 | 77 | 1838 | 246 | 1652 | 950 | 616 | 857 | 506 | 463 | 1016 | 652 | 348 | 622 | 1083 | 100 | 613 | 192 | 224 | 543 | 307 | 723 | 234 | 387 | 447 | 2574 | 102 | 2489 | 1676 | 1177 | 957 | 1265 | 274 | 271 | 1559 | 466 | 435 | 444 | 310 | 411 | 670 | 430 | 244 | 1495 | 355 | 3514 | 173 | 1649 | 629 | 122 | 1835 | 271 | 73 | 319 | 57 | 86 | 161 | 62 | 171 | 3066 | 346 | 1499 | 655 | 527 | 816 | 225 | 682 | 583 | 4680 | 133 | 362 | 163 | 148 | 152 | 121 | 418 | 583 | 288 | 45 | 112 | 644 | 162 | 150 | 372 | 71 | 58 | 1326 | 67 | 88 | 212 | 75 | 4733 | 232 | 228 | 187 | 93 | 3435 | 528 | 1879 | 1248 | 333 | 2318 | 210 | 7383 | 2499 | 4844 | 3033 | 1059 | 2057 | 4627 | 1618 | 1077 | 3569 | 1307 | 1637 | 13291 | 2868 | 2678 | 2142 | 7839 | 2274 | 6904 | 1495 | 6369 | 2651 | 1565 | 688 | 476 | 5237 | 3780 | 5147 | 1747 | 1061 | 580 | 482 | 415 | 425 | 305 | 1325 | 164 | 2377 | 2500 | 1685 | 2489 | 1842 | 1784 | 3253 | 2651 | 1973 | 2463 | 916 | 102 | 1703 | 1644 | 1400 | 2441 | 1394 | 3383 | 2044 | 2758 | 2839 | 1223 | 89 | 4102 | 2137 | 2103 | 1511 | 3065 | 698 | 747 | 1965 | 851 | 1160 | 868 | 693 | 1073 | 1855 | 2026 | 1087 | 1279 | 171 | 3144 | 907 | 2590 | 287 | 3743 | 820 | 557 | 578 | 182 | 182 | 344 | 204 | 1007 | 2116 | 181 | 2429 | 2541 | 3275 | 1511 | 2398 | 3162 | 2109 | 189 | 2480 | 860 | 802 | 834 | 447 | 2385 | 2753 | 1349 | 316 | 708 | 805 | 194 | 936 | 1178 | 495 | 431 | 3200 | 558 | 481 | 847 | 520 | 3083 | 252 |
| unique | 5168 | 12 | 6 | 56 | 8 | 14 | 8 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 14 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 6 | 2 | 2 | 2 | 2 | 6 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 10 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 6 | 8 | 7 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 26 | 7 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 18 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 15 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 7 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| top | 565 | 25-29 | Man | India | Master’s degree | Student | 3-5 years | Python | R | SQL | C | C++ | Java | Javascript | Julia | Swift | Bash | MATLAB | None | Other | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | RStudio | Visual Studio | Visual Studio Code (VSCode) | PyCharm | Spyder | Notepad++ | Sublime Text | Vim / Emacs | MATLAB | None | Other | Kaggle Notebooks | Colab Notebooks | Azure Notebooks | Paperspace / Gradient | Binder / JupyterHub | Code Ocean | IBM Watson Studio | Amazon Sagemaker Studio | Amazon EMR Notebooks | Google Cloud AI Platform Notebooks | Google Cloud Datalab Notebooks | Databricks Collaborative Notebooks | None | Other | A personal computer or laptop | GPUs | TPUs | None | Other | Never | Matplotlib | Seaborn | Plotly / Plotly Express | Ggplot / ggplot2 | Shiny | D3 js | Altair | Bokeh | Geoplotlib | Leaflet / Folium | None | Other | Under 1 year | Scikit-learn | TensorFlow | Keras | PyTorch | Fast.ai | MXNet | Xgboost | LightGBM | CatBoost | Prophet | H2O 3 | Caret | Tidymodels | JAX | None | Other | Linear or Logistic Regression | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | Evolutionary Approaches | Dense Neural Networks (MLPs, etc) | Convolutional Neural Networks | Generative Adversarial Networks | Recurrent Neural Networks | Transformer Networks (BERT, gpt-3, etc) | None | Other | General purpose image/video tools (PIL, cv2, s... | Image segmentation methods (U-Net, Mask R-CNN,... | Object detection methods (YOLOv3, RetinaNet, etc) | Image classification and other general purpose... | Generative Networks (GAN, VAE, etc) | None | Other | Word embeddings/vectors (GLoVe, fastText, word... | Encoder-decorder models (seq2seq, vanilla tran... | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | None | Other | 0-49 employees | 1-2 | We are exploring ML methods (and may one day p... | Analyze and understand data to influence produ... | Build and/or run the data infrastructure that ... | Build prototypes to explore applying machine l... | Build and/or run a machine learning service th... | Experimentation and iteration to improve exist... | Do research that advances the state of the art... | None of these activities are an important part... | Other | $0-999 | $0 ($USD) | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | IBM Cloud / Red Hat | Oracle Cloud | SAP Cloud | Salesforce Cloud | VMware Cloud | Alibaba Cloud | Tencent Cloud | None | Other | Amazon EC2 | AWS Lambda | Amazon Elastic Container Service | Azure Cloud Services | Microsoft Azure Container Instances | Azure Functions | Google Cloud Compute Engine | Google Cloud Functions | Google Cloud Run | Google Cloud App Engine | No / None | Other | Amazon SageMaker | Amazon Forecast | Amazon Rekognition | Azure Machine Learning Studio | Azure Cognitive Services | Google Cloud AI Platform / Google Cloud ML En... | Google Cloud Video AI | Google Cloud Natural Language | Google Cloud Vision AI | No / None | Other | MySQL | PostgresSQL | SQLite | Oracle Database | MongoDB | Snowflake | IBM Db2 | Microsoft SQL Server | Microsoft Access | Microsoft Azure Data Lake Storage | Amazon Redshift | Amazon Athena | Amazon DynamoDB | Google Cloud BigQuery | Google Cloud SQL | Google Cloud Firestore | None | Other | MySQL | Amazon QuickSight | Microsoft Power BI | Google Data Studio | Looker | Tableau | Salesforce | Einstein Analytics | Qlik | Domo | TIBCO Spotfire | Alteryx | Sisense | SAP Analytics Cloud | None | Other | Tableau | Automated data augmentation (e.g. imgaug, albu... | Automated feature engineering/selection (e.g. ... | Automated model selection (e.g. auto-sklearn, ... | Automated model architecture searches (e.g. da... | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google A... | No / None | Other | Google Cloud AutoML | H20 Driverless AI | Databricks AutoML | DataRobot AutoML | Tpot | Auto-Keras | Auto-Sklearn | Auto_ml | Xcessiv | MLbox | No / None | Other | Neptune.ai | Weights & Biases | Comet.ml | Sacred + Omniboard | TensorBoard | Guild.ai | Polyaxon | Trains | Domino Model Monitor | No / None | Other | Plotly Dash | Streamlit | NBViewer | GitHub | Personal blog | Kaggle | Colab | Shiny | I do not share my work publicly | Other | Coursera | edX | Kaggle Learn Courses | DataCamp | Fast.ai | Udacity | Udemy | LinkedIn Learning | Cloud-certification programs (direct from AWS,... | University Courses (resulting in a university ... | None | Other | Local development environments (RStudio, Jupyt... | Twitter (data science influencers) | Email newsletters (Data Elixir, O'Reilly Data ... | Reddit (r/machinelearning, etc) | Kaggle (notebooks, forums, etc) | Course Forums (forums.fast.ai, Coursera forums... | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | Podcasts (Chai Time Data Science, O’Reilly Dat... | Blogs (Towards Data Science, Analytics Vidhya,... | Journal Publications (peer-reviewed journals, ... | Slack Communities (ods.ai, kagglenoobs, etc) | None | Other | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | IBM Cloud / Red Hat | Oracle Cloud | SAP Cloud | VMware Cloud | Salesforce Cloud | Alibaba Cloud | Tencent Cloud | None | Other | Amazon EC2 | AWS Lambda | Amazon Elastic Container Service | Azure Cloud Services | Microsoft Azure Container Instances | Azure Functions | Google Cloud Compute Engine | Google Cloud Functions | Google Cloud Run | Google Cloud App Engine | None | Other | Amazon SageMaker | Amazon Forecast | Amazon Rekognition | Azure Machine Learning Studio | Azure Cognitive Services | Google Cloud AI Platform / Google Cloud ML En... | Google Cloud Video AI | Google Cloud Natural Language | Google Cloud Vision AI | None | Other | MySQL | PostgresSQL | SQLite | Oracle Database | MongoDB | Snowflake | IBM Db2 | Microsoft SQL Server | Microsoft Access | Microsoft Azure Data Lake Storage | Amazon Redshift | Amazon Athena | Amazon DynamoDB | Google Cloud BigQuery | Google Cloud SQL | Google Cloud Firestore | None | Other | Microsoft Power BI | Amazon QuickSight | Google Data Studio | Looker | Tableau | Salesforce | Einstein Analytics | Qlik | Domo | TIBCO Spotfire | Alteryx | Sisense | SAP Analytics Cloud | None | Other | Automated data augmentation (e.g. imgaug, albu... | Automated feature engineering/selection (e.g. ... | Automated model selection (e.g. auto-sklearn, ... | Automated model architecture searches (e.g. da... | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google C... | None | Other | Google Cloud AutoML | H20 Driverless AI | Databricks AutoML | DataRobot AutoML | Tpot | Auto-Keras | Auto-Sklearn | Auto_ml | Xcessiv | MLbox | None | Other | Neptune.ai | Weights & Biases | Comet.ml | Sacred + Omniboard | TensorBoard | Guild.ai | Polyaxon | Trains | Domino Model Monitor | None | Other |
| freq | 34 | 4011 | 15789 | 5851 | 7859 | 5171 | 4546 | 15530 | 4277 | 7535 | 3315 | 3827 | 3367 | 2995 | 262 | 198 | 1776 | 2217 | 206 | 1945 | 14241 | 11211 | 3826 | 2445 | 5873 | 5099 | 3290 | 3132 | 2452 | 1502 | 1604 | 386 | 1162 | 5992 | 6329 | 857 | 180 | 2072 | 105 | 846 | 497 | 245 | 1218 | 1231 | 394 | 5282 | 485 | 13348 | 8310 | 960 | 7891 | 666 | 12050 | 12342 | 8821 | 4130 | 4120 | 1137 | 829 | 233 | 920 | 850 | 596 | 1897 | 565 | 6312 | 10250 | 6934 | 6192 | 4189 | 742 | 218 | 3935 | 1799 | 957 | 532 | 344 | 939 | 484 | 84 | 1208 | 371 | 10560 | 8804 | 5134 | 3647 | 731 | 3364 | 5859 | 1024 | 3468 | 1298 | 736 | 410 | 2139 | 2003 | 2079 | 3512 | 1092 | 1153 | 71 | 2110 | 1514 | 557 | 1428 | 1047 | 82 | 4208 | 2645 | 2353 | 6421 | 3320 | 4007 | 2725 | 3119 | 2339 | 1753 | 522 | 2128 | 3856 | 2806 | 1705 | 2286 | 441 | 286 | 169 | 192 | 248 | 115 | 76 | 1837 | 245 | 1651 | 949 | 615 | 856 | 505 | 462 | 1015 | 651 | 347 | 621 | 1082 | 99 | 612 | 191 | 223 | 542 | 306 | 722 | 233 | 386 | 446 | 2573 | 101 | 2488 | 1675 | 1176 | 956 | 1264 | 273 | 270 | 1558 | 465 | 434 | 443 | 309 | 410 | 669 | 429 | 243 | 1494 | 354 | 764 | 172 | 1648 | 628 | 121 | 1834 | 270 | 72 | 318 | 56 | 85 | 160 | 61 | 170 | 3065 | 345 | 540 | 654 | 526 | 815 | 224 | 681 | 582 | 4679 | 132 | 361 | 162 | 147 | 151 | 120 | 417 | 582 | 287 | 44 | 111 | 643 | 161 | 149 | 371 | 70 | 57 | 1325 | 66 | 87 | 211 | 74 | 4732 | 231 | 227 | 186 | 92 | 3434 | 527 | 1878 | 1247 | 332 | 2317 | 209 | 7382 | 2498 | 4843 | 3032 | 1058 | 2056 | 4626 | 1617 | 1076 | 3568 | 1306 | 1636 | 6107 | 2867 | 2677 | 2141 | 7838 | 2273 | 6903 | 1494 | 6368 | 2650 | 1564 | 687 | 475 | 5236 | 3779 | 5146 | 1746 | 1060 | 579 | 481 | 414 | 424 | 304 | 1324 | 163 | 2376 | 2499 | 1684 | 2488 | 1841 | 1783 | 3252 | 2650 | 1972 | 2462 | 915 | 101 | 1702 | 1643 | 1399 | 2440 | 1393 | 3382 | 2043 | 2757 | 2838 | 1222 | 88 | 4101 | 2136 | 2102 | 1510 | 3064 | 697 | 746 | 1964 | 850 | 1159 | 867 | 692 | 1072 | 1854 | 2025 | 1086 | 1278 | 170 | 3143 | 906 | 2589 | 286 | 3742 | 819 | 556 | 577 | 181 | 181 | 343 | 203 | 1006 | 2115 | 180 | 2428 | 2540 | 3274 | 1510 | 2397 | 3161 | 2108 | 188 | 2479 | 859 | 801 | 833 | 446 | 2384 | 2752 | 1348 | 315 | 707 | 804 | 193 | 935 | 1177 | 494 | 430 | 3199 | 557 | 480 | 846 | 519 | 3082 | 251 |
# Remove the top row so it does not hinder the EDA later
df1 = df.iloc[1:,:]
df1.head()
| Time from Start to Finish (seconds) | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7_Part_1 | Q7_Part_2 | Q7_Part_3 | Q7_Part_4 | Q7_Part_5 | Q7_Part_6 | Q7_Part_7 | Q7_Part_8 | Q7_Part_9 | Q7_Part_10 | Q7_Part_11 | Q7_Part_12 | Q7_OTHER | Q8 | Q9_Part_1 | Q9_Part_2 | Q9_Part_3 | Q9_Part_4 | Q9_Part_5 | Q9_Part_6 | Q9_Part_7 | Q9_Part_8 | Q9_Part_9 | Q9_Part_10 | Q9_Part_11 | Q9_OTHER | Q10_Part_1 | Q10_Part_2 | Q10_Part_3 | Q10_Part_4 | Q10_Part_5 | Q10_Part_6 | Q10_Part_7 | Q10_Part_8 | Q10_Part_9 | Q10_Part_10 | Q10_Part_11 | Q10_Part_12 | Q10_Part_13 | Q10_OTHER | Q11 | Q12_Part_1 | Q12_Part_2 | Q12_Part_3 | Q12_OTHER | Q13 | Q14_Part_1 | Q14_Part_2 | Q14_Part_3 | Q14_Part_4 | Q14_Part_5 | Q14_Part_6 | Q14_Part_7 | Q14_Part_8 | Q14_Part_9 | Q14_Part_10 | Q14_Part_11 | Q14_OTHER | Q15 | Q16_Part_1 | Q16_Part_2 | Q16_Part_3 | Q16_Part_4 | Q16_Part_5 | Q16_Part_6 | Q16_Part_7 | Q16_Part_8 | Q16_Part_9 | Q16_Part_10 | Q16_Part_11 | Q16_Part_12 | Q16_Part_13 | Q16_Part_14 | Q16_Part_15 | Q16_OTHER | Q17_Part_1 | Q17_Part_2 | Q17_Part_3 | Q17_Part_4 | Q17_Part_5 | Q17_Part_6 | Q17_Part_7 | Q17_Part_8 | Q17_Part_9 | Q17_Part_10 | Q17_Part_11 | Q17_OTHER | Q18_Part_1 | Q18_Part_2 | Q18_Part_3 | Q18_Part_4 | Q18_Part_5 | Q18_Part_6 | Q18_OTHER | Q19_Part_1 | Q19_Part_2 | Q19_Part_3 | Q19_Part_4 | Q19_Part_5 | Q19_OTHER | Q20 | Q21 | Q22 | Q23_Part_1 | Q23_Part_2 | Q23_Part_3 | Q23_Part_4 | Q23_Part_5 | Q23_Part_6 | Q23_Part_7 | Q23_OTHER | Q24 | Q25 | Q26_A_Part_1 | Q26_A_Part_2 | Q26_A_Part_3 | Q26_A_Part_4 | Q26_A_Part_5 | Q26_A_Part_6 | Q26_A_Part_7 | Q26_A_Part_8 | Q26_A_Part_9 | Q26_A_Part_10 | Q26_A_Part_11 | Q26_A_OTHER | Q27_A_Part_1 | Q27_A_Part_2 | Q27_A_Part_3 | Q27_A_Part_4 | Q27_A_Part_5 | Q27_A_Part_6 | Q27_A_Part_7 | Q27_A_Part_8 | Q27_A_Part_9 | Q27_A_Part_10 | Q27_A_Part_11 | Q27_A_OTHER | Q28_A_Part_1 | Q28_A_Part_2 | Q28_A_Part_3 | Q28_A_Part_4 | Q28_A_Part_5 | Q28_A_Part_6 | Q28_A_Part_7 | Q28_A_Part_8 | Q28_A_Part_9 | Q28_A_Part_10 | Q28_A_OTHER | Q29_A_Part_1 | Q29_A_Part_2 | Q29_A_Part_3 | Q29_A_Part_4 | Q29_A_Part_5 | Q29_A_Part_6 | Q29_A_Part_7 | Q29_A_Part_8 | Q29_A_Part_9 | Q29_A_Part_10 | Q29_A_Part_11 | Q29_A_Part_12 | Q29_A_Part_13 | Q29_A_Part_14 | Q29_A_Part_15 | Q29_A_Part_16 | Q29_A_Part_17 | Q29_A_OTHER | Q30 | Q31_A_Part_1 | Q31_A_Part_2 | Q31_A_Part_3 | Q31_A_Part_4 | Q31_A_Part_5 | Q31_A_Part_6 | Q31_A_Part_7 | Q31_A_Part_8 | Q31_A_Part_9 | Q31_A_Part_10 | Q31_A_Part_11 | Q31_A_Part_12 | Q31_A_Part_13 | Q31_A_Part_14 | Q31_A_OTHER | Q32 | Q33_A_Part_1 | Q33_A_Part_2 | Q33_A_Part_3 | Q33_A_Part_4 | Q33_A_Part_5 | Q33_A_Part_6 | Q33_A_Part_7 | Q33_A_OTHER | Q34_A_Part_1 | Q34_A_Part_2 | Q34_A_Part_3 | Q34_A_Part_4 | Q34_A_Part_5 | Q34_A_Part_6 | Q34_A_Part_7 | Q34_A_Part_8 | Q34_A_Part_9 | Q34_A_Part_10 | Q34_A_Part_11 | Q34_A_OTHER | Q35_A_Part_1 | Q35_A_Part_2 | Q35_A_Part_3 | Q35_A_Part_4 | Q35_A_Part_5 | Q35_A_Part_6 | Q35_A_Part_7 | Q35_A_Part_8 | Q35_A_Part_9 | Q35_A_Part_10 | Q35_A_OTHER | Q36_Part_1 | Q36_Part_2 | Q36_Part_3 | Q36_Part_4 | Q36_Part_5 | Q36_Part_6 | Q36_Part_7 | Q36_Part_8 | Q36_Part_9 | Q36_OTHER | Q37_Part_1 | Q37_Part_2 | Q37_Part_3 | Q37_Part_4 | Q37_Part_5 | Q37_Part_6 | Q37_Part_7 | Q37_Part_8 | Q37_Part_9 | Q37_Part_10 | Q37_Part_11 | Q37_OTHER | Q38 | Q39_Part_1 | Q39_Part_2 | Q39_Part_3 | Q39_Part_4 | Q39_Part_5 | Q39_Part_6 | Q39_Part_7 | Q39_Part_8 | Q39_Part_9 | Q39_Part_10 | Q39_Part_11 | Q39_OTHER | Q26_B_Part_1 | Q26_B_Part_2 | Q26_B_Part_3 | Q26_B_Part_4 | Q26_B_Part_5 | Q26_B_Part_6 | Q26_B_Part_7 | Q26_B_Part_8 | Q26_B_Part_9 | Q26_B_Part_10 | Q26_B_Part_11 | Q26_B_OTHER | Q27_B_Part_1 | Q27_B_Part_2 | Q27_B_Part_3 | Q27_B_Part_4 | Q27_B_Part_5 | Q27_B_Part_6 | Q27_B_Part_7 | Q27_B_Part_8 | Q27_B_Part_9 | Q27_B_Part_10 | Q27_B_Part_11 | Q27_B_OTHER | Q28_B_Part_1 | Q28_B_Part_2 | Q28_B_Part_3 | Q28_B_Part_4 | Q28_B_Part_5 | Q28_B_Part_6 | Q28_B_Part_7 | Q28_B_Part_8 | Q28_B_Part_9 | Q28_B_Part_10 | Q28_B_OTHER | Q29_B_Part_1 | Q29_B_Part_2 | Q29_B_Part_3 | Q29_B_Part_4 | Q29_B_Part_5 | Q29_B_Part_6 | Q29_B_Part_7 | Q29_B_Part_8 | Q29_B_Part_9 | Q29_B_Part_10 | Q29_B_Part_11 | Q29_B_Part_12 | Q29_B_Part_13 | Q29_B_Part_14 | Q29_B_Part_15 | Q29_B_Part_16 | Q29_B_Part_17 | Q29_B_OTHER | Q31_B_Part_1 | Q31_B_Part_2 | Q31_B_Part_3 | Q31_B_Part_4 | Q31_B_Part_5 | Q31_B_Part_6 | Q31_B_Part_7 | Q31_B_Part_8 | Q31_B_Part_9 | Q31_B_Part_10 | Q31_B_Part_11 | Q31_B_Part_12 | Q31_B_Part_13 | Q31_B_Part_14 | Q31_B_OTHER | Q33_B_Part_1 | Q33_B_Part_2 | Q33_B_Part_3 | Q33_B_Part_4 | Q33_B_Part_5 | Q33_B_Part_6 | Q33_B_Part_7 | Q33_B_OTHER | Q34_B_Part_1 | Q34_B_Part_2 | Q34_B_Part_3 | Q34_B_Part_4 | Q34_B_Part_5 | Q34_B_Part_6 | Q34_B_Part_7 | Q34_B_Part_8 | Q34_B_Part_9 | Q34_B_Part_10 | Q34_B_Part_11 | Q34_B_OTHER | Q35_B_Part_1 | Q35_B_Part_2 | Q35_B_Part_3 | Q35_B_Part_4 | Q35_B_Part_5 | Q35_B_Part_6 | Q35_B_Part_7 | Q35_B_Part_8 | Q35_B_Part_9 | Q35_B_Part_10 | Q35_B_OTHER | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1838 | 35-39 | Man | Colombia | Doctoral degree | Student | 5-10 years | Python | R | SQL | C | NaN | NaN | Javascript | NaN | NaN | NaN | MATLAB | NaN | Other | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | NaN | NaN | Visual Studio Code (VSCode) | NaN | Spyder | NaN | NaN | NaN | NaN | NaN | NaN | Kaggle Notebooks | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A cloud computing platform (AWS, Azure, GCP, h... | GPUs | NaN | NaN | NaN | 2-5 times | Matplotlib | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Geoplotlib | NaN | NaN | NaN | 1-2 years | NaN | TensorFlow | Keras | NaN | NaN | NaN | Xgboost | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | NaN | Dense Neural Networks (MLPs, etc) | Convolutional Neural Networks | NaN | Recurrent Neural Networks | NaN | NaN | NaN | NaN | NaN | NaN | Image classification and other general purpose... | NaN | NaN | NaN | Word embeddings/vectors (GLoVe, fastText, word... | NaN | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | Kaggle Learn Courses | NaN | NaN | NaN | NaN | NaN | NaN | University Courses (resulting in a university ... | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | NaN | NaN | Kaggle (notebooks, forums, etc) | NaN | NaN | NaN | NaN | Journal Publications (peer-reviewed journals, ... | NaN | NaN | NaN | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | IBM Cloud / Red Hat | NaN | SAP Cloud | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Azure Cloud Services | Microsoft Azure Container Instances | Azure Functions | Google Cloud Compute Engine | Google Cloud Functions | Google Cloud Run | Google Cloud App Engine | NaN | NaN | Amazon SageMaker | Amazon Forecast | Amazon Rekognition | Azure Machine Learning Studio | Azure Cognitive Services | Google Cloud AI Platform / Google Cloud ML En... | Google Cloud Video AI | Google Cloud Natural Language | Google Cloud Vision AI | NaN | NaN | NaN | NaN | NaN | NaN | MongoDB | NaN | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | Google Cloud BigQuery | Google Cloud SQL | Google Cloud Firestore | NaN | NaN | Microsoft Power BI | Amazon QuickSight | Google Data Studio | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | SAP Analytics Cloud | NaN | NaN | Automated data augmentation (e.g. imgaug, albu... | NaN | NaN | NaN | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google C... | NaN | NaN | Google Cloud AutoML | NaN | Databricks AutoML | NaN | NaN | Auto-Keras | Auto-Sklearn | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | TensorBoard | NaN | NaN | NaN | NaN | NaN | NaN |
| 2 | 289287 | 30-34 | Man | United States of America | Master’s degree | Data Engineer | 5-10 years | Python | R | SQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | NaN | NaN | Visual Studio | NaN | PyCharm | NaN | NaN | Sublime Text | NaN | NaN | NaN | NaN | NaN | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A personal computer or laptop | GPUs | NaN | NaN | NaN | 2-5 times | Matplotlib | Seaborn | NaN | Ggplot / ggplot2 | Shiny | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 1-2 years | Scikit-learn | TensorFlow | Keras | PyTorch | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Linear or Logistic Regression | NaN | NaN | NaN | NaN | NaN | Convolutional Neural Networks | NaN | NaN | Transformer Networks (BERT, gpt-3, etc) | NaN | NaN | NaN | Image segmentation methods (U-Net, Mask R-CNN,... | NaN | Image classification and other general purpose... | NaN | NaN | NaN | NaN | NaN | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | NaN | NaN | 10,000 or more employees | 20+ | We have well established ML methods (i.e., mod... | Analyze and understand data to influence produ... | NaN | NaN | NaN | NaN | Do research that advances the state of the art... | NaN | NaN | 100,000-124,999 | $100,000 or more ($USD) | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon EC2 | AWS Lambda | NaN | NaN | NaN | Azure Functions | Google Cloud Compute Engine | NaN | NaN | NaN | NaN | NaN | Amazon SageMaker | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | PostgresSQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon Redshift | Amazon Athena | NaN | NaN | NaN | NaN | NaN | NaN | PostgresSQL | Amazon QuickSight | Microsoft Power BI | NaN | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Microsoft Power BI | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | GitHub | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | NaN | DataCamp | NaN | NaN | Udemy | NaN | NaN | NaN | NaN | NaN | Business intelligence software (Salesforce, Ta... | Twitter (data science influencers) | NaN | Reddit (r/machinelearning, etc) | Kaggle (notebooks, forums, etc) | Course Forums (forums.fast.ai, Coursera forums... | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | NaN | Blogs (Towards Data Science, Analytics Vidhya,... | NaN | Slack Communities (ods.ai, kagglenoobs, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 3 | 860 | 35-39 | Man | Argentina | Bachelor’s degree | Software Engineer | 10-20 years | NaN | NaN | NaN | NaN | NaN | Java | Javascript | NaN | NaN | Bash | NaN | NaN | NaN | R | NaN | NaN | NaN | Visual Studio Code (VSCode) | NaN | NaN | Notepad++ | Sublime Text | Vim / Emacs | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | A personal computer or laptop | NaN | NaN | None | NaN | Never | NaN | NaN | NaN | NaN | NaN | D3 js | NaN | NaN | NaN | NaN | NaN | NaN | I do not use machine learning methods | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 1000-9,999 employees | 0 | No (we do not use ML methods) | NaN | NaN | NaN | NaN | NaN | NaN | None of these activities are an important part... | NaN | 15,000-19,999 | $0 ($USD) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | edX | NaN | NaN | NaN | Udacity | Udemy | NaN | NaN | NaN | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | Email newsletters (Data Elixir, O'Reilly Data ... | NaN | Kaggle (notebooks, forums, etc) | NaN | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN |
| 4 | 507 | 30-34 | Man | United States of America | Master’s degree | Data Scientist | 5-10 years | Python | NaN | SQL | NaN | NaN | NaN | NaN | NaN | NaN | Bash | NaN | NaN | NaN | Python | NaN | NaN | NaN | NaN | PyCharm | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | A cloud computing platform (AWS, Azure, GCP, h... | NaN | NaN | None | NaN | 2-5 times | Matplotlib | Seaborn | Plotly / Plotly Express | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 3-4 years | Scikit-learn | TensorFlow | Keras | NaN | NaN | NaN | Xgboost | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Linear or Logistic Regression | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | NaN | Dense Neural Networks (MLPs, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 250-999 employees | 5-9 | We have well established ML methods (i.e., mod... | Analyze and understand data to influence produ... | NaN | NaN | Build and/or run a machine learning service th... | Experimentation and iteration to improve exist... | NaN | NaN | NaN | 125,000-149,999 | $10,000-$99,999 | Amazon Web Services (AWS) | NaN | NaN | NaN | NaN | NaN | Salesforce Cloud | NaN | NaN | NaN | NaN | NaN | Amazon EC2 | AWS Lambda | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | MySQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Amazon Redshift | NaN | NaN | NaN | NaN | NaN | NaN | NaN | MySQL | NaN | NaN | NaN | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | No / None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | I do not share my work publicly | NaN | Coursera | NaN | NaN | DataCamp | NaN | NaN | NaN | LinkedIn Learning | NaN | University Courses (resulting in a university ... | NaN | NaN | Local development environments (RStudio, Jupyt... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 5 | 78 | 30-34 | Man | Japan | Master’s degree | Software Engineer | 3-5 years | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
# Null values for each column
df1.isnull().sum()
Time from Start to Finish (seconds) 0 Q1 0 Q2 0 Q3 0 Q4 467 Q5 759 Q6 916 Q7_Part_1 4506 Q7_Part_2 15759 Q7_Part_3 12501 Q7_Part_4 16721 Q7_Part_5 16209 Q7_Part_6 16669 Q7_Part_7 17041 Q7_Part_8 19774 Q7_Part_9 19838 Q7_Part_10 18260 Q7_Part_11 17819 Q7_Part_12 19830 Q7_OTHER 18091 Q8 2215 Q9_Part_1 8825 Q9_Part_2 16210 Q9_Part_3 17591 Q9_Part_4 14163 Q9_Part_5 14937 Q9_Part_6 16746 Q9_Part_7 16904 Q9_Part_8 17584 Q9_Part_9 18534 Q9_Part_10 18432 Q9_Part_11 19650 Q9_OTHER 18874 Q10_Part_1 14044 Q10_Part_2 13707 Q10_Part_3 19179 Q10_Part_4 19856 Q10_Part_5 17964 Q10_Part_6 19931 Q10_Part_7 19190 Q10_Part_8 19539 Q10_Part_9 19791 Q10_Part_10 18818 Q10_Part_11 18805 Q10_Part_12 19642 Q10_Part_13 14754 Q10_OTHER 19551 Q11 3007 Q12_Part_1 11726 Q12_Part_2 19076 Q12_Part_3 12145 Q12_OTHER 19370 Q13 3256 Q14_Part_1 7694 Q14_Part_2 11215 Q14_Part_3 15906 Q14_Part_4 15916 Q14_Part_5 18899 Q14_Part_6 19207 Q14_Part_7 19803 Q14_Part_8 19116 Q14_Part_9 19186 Q14_Part_10 19440 Q14_Part_11 18139 Q14_OTHER 19471 Q15 3662 Q16_Part_1 9786 Q16_Part_2 13102 Q16_Part_3 13844 Q16_Part_4 15847 Q16_Part_5 19294 Q16_Part_6 19818 Q16_Part_7 16101 Q16_Part_8 18237 Q16_Part_9 19079 Q16_Part_10 19504 Q16_Part_11 19692 Q16_Part_12 19097 Q16_Part_13 19552 Q16_Part_14 19952 Q16_Part_15 18828 Q16_OTHER 19665 Q17_Part_1 9476 Q17_Part_2 11232 Q17_Part_3 14902 Q17_Part_4 16389 Q17_Part_5 19305 Q17_Part_6 16672 Q17_Part_7 14177 Q17_Part_8 19012 Q17_Part_9 16568 Q17_Part_10 18738 Q17_Part_11 19300 Q17_OTHER 19626 Q18_Part_1 17897 Q18_Part_2 18033 Q18_Part_3 17957 Q18_Part_4 16524 Q18_Part_5 18944 Q18_Part_6 18883 Q18_OTHER 19965 Q19_Part_1 17926 Q19_Part_2 18522 Q19_Part_3 19479 Q19_Part_4 18608 Q19_Part_5 18989 Q19_OTHER 19954 Q20 8633 Q21 8754 Q22 8906 Q23_Part_1 13615 Q23_Part_2 16716 Q23_Part_3 16029 Q23_Part_4 17311 Q23_Part_5 16917 Q23_Part_6 17697 Q23_Part_7 18283 Q23_OTHER 19514 Q24 9307 Q25 9466 Q26_A_Part_1 17230 Q26_A_Part_2 18331 Q26_A_Part_3 17750 Q26_A_Part_4 19595 Q26_A_Part_5 19750 Q26_A_Part_6 19867 Q26_A_Part_7 19844 Q26_A_Part_8 19788 Q26_A_Part_9 19921 Q26_A_Part_10 19960 Q26_A_Part_11 18199 Q26_A_OTHER 19791 Q27_A_Part_1 18385 Q27_A_Part_2 19087 Q27_A_Part_3 19421 Q27_A_Part_4 19180 Q27_A_Part_5 19531 Q27_A_Part_6 19574 Q27_A_Part_7 19021 Q27_A_Part_8 19385 Q27_A_Part_9 19689 Q27_A_Part_10 19415 Q27_A_Part_11 18954 Q27_A_OTHER 19937 Q28_A_Part_1 19424 Q28_A_Part_2 19845 Q28_A_Part_3 19813 Q28_A_Part_4 19494 Q28_A_Part_5 19730 Q28_A_Part_6 19314 Q28_A_Part_7 19803 Q28_A_Part_8 19650 Q28_A_Part_9 19590 Q28_A_Part_10 17463 Q28_A_OTHER 19935 Q29_A_Part_1 17548 Q29_A_Part_2 18361 Q29_A_Part_3 18860 Q29_A_Part_4 19080 Q29_A_Part_5 18772 Q29_A_Part_6 19763 Q29_A_Part_7 19766 Q29_A_Part_8 18478 Q29_A_Part_9 19571 Q29_A_Part_10 19602 Q29_A_Part_11 19593 Q29_A_Part_12 19727 Q29_A_Part_13 19626 Q29_A_Part_14 19367 Q29_A_Part_15 19607 Q29_A_Part_16 19793 Q29_A_Part_17 18542 Q29_A_OTHER 19682 Q30 16523 Q31_A_Part_1 19864 Q31_A_Part_2 18388 Q31_A_Part_3 19408 Q31_A_Part_4 19915 Q31_A_Part_5 18202 Q31_A_Part_6 19766 Q31_A_Part_7 19964 Q31_A_Part_8 19718 Q31_A_Part_9 19980 Q31_A_Part_10 19951 Q31_A_Part_11 19876 Q31_A_Part_12 19975 Q31_A_Part_13 19866 Q31_A_Part_14 16971 Q31_A_OTHER 19691 Q32 18538 Q33_A_Part_1 19382 Q33_A_Part_2 19510 Q33_A_Part_3 19221 Q33_A_Part_4 19812 Q33_A_Part_5 19355 Q33_A_Part_6 19454 Q33_A_Part_7 15357 Q33_A_OTHER 19904 Q34_A_Part_1 19675 Q34_A_Part_2 19874 Q34_A_Part_3 19889 Q34_A_Part_4 19885 Q34_A_Part_5 19916 Q34_A_Part_6 19619 Q34_A_Part_7 19454 Q34_A_Part_8 19749 Q34_A_Part_9 19992 Q34_A_Part_10 19925 Q34_A_Part_11 19393 Q34_A_OTHER 19875 Q35_A_Part_1 19887 Q35_A_Part_2 19665 Q35_A_Part_3 19966 Q35_A_Part_4 19979 Q35_A_Part_5 18711 Q35_A_Part_6 19970 Q35_A_Part_7 19949 Q35_A_Part_8 19825 Q35_A_Part_9 19962 Q35_A_Part_10 15304 Q35_A_OTHER 19805 Q36_Part_1 19809 Q36_Part_2 19850 Q36_Part_3 19944 Q36_Part_4 16602 Q36_Part_5 19509 Q36_Part_6 18158 Q36_Part_7 18789 Q36_Part_8 19704 Q36_Part_9 17719 Q36_OTHER 19827 Q37_Part_1 12654 Q37_Part_2 17538 Q37_Part_3 15193 Q37_Part_4 17004 Q37_Part_5 18978 Q37_Part_6 17980 Q37_Part_7 15410 Q37_Part_8 18419 Q37_Part_9 18960 Q37_Part_10 16468 Q37_Part_11 18730 Q37_OTHER 18400 Q38 6746 Q39_Part_1 17169 Q39_Part_2 17359 Q39_Part_3 17895 Q39_Part_4 12198 Q39_Part_5 17763 Q39_Part_6 13133 Q39_Part_7 18542 Q39_Part_8 13668 Q39_Part_9 17386 Q39_Part_10 18472 Q39_Part_11 19349 Q39_OTHER 19561 Q26_B_Part_1 14800 Q26_B_Part_2 16257 Q26_B_Part_3 14890 Q26_B_Part_4 18290 Q26_B_Part_5 18976 Q26_B_Part_6 19457 Q26_B_Part_7 19555 Q26_B_Part_8 19622 Q26_B_Part_9 19612 Q26_B_Part_10 19732 Q26_B_Part_11 18712 Q26_B_OTHER 19873 Q27_B_Part_1 17660 Q27_B_Part_2 17537 Q27_B_Part_3 18352 Q27_B_Part_4 17548 Q27_B_Part_5 18195 Q27_B_Part_6 18253 Q27_B_Part_7 16784 Q27_B_Part_8 17386 Q27_B_Part_9 18064 Q27_B_Part_10 17574 Q27_B_Part_11 19121 Q27_B_OTHER 19935 Q28_B_Part_1 18334 Q28_B_Part_2 18393 Q28_B_Part_3 18637 Q28_B_Part_4 17596 Q28_B_Part_5 18643 Q28_B_Part_6 16654 Q28_B_Part_7 17993 Q28_B_Part_8 17279 Q28_B_Part_9 17198 Q28_B_Part_10 18814 Q28_B_OTHER 19948 Q29_B_Part_1 15935 Q29_B_Part_2 17900 Q29_B_Part_3 17934 Q29_B_Part_4 18526 Q29_B_Part_5 16972 Q29_B_Part_6 19339 Q29_B_Part_7 19290 Q29_B_Part_8 18072 Q29_B_Part_9 19186 Q29_B_Part_10 18877 Q29_B_Part_11 19169 Q29_B_Part_12 19344 Q29_B_Part_13 18964 Q29_B_Part_14 18182 Q29_B_Part_15 18011 Q29_B_Part_16 18950 Q29_B_Part_17 18758 Q29_B_OTHER 19866 Q31_B_Part_1 16893 Q31_B_Part_2 19130 Q31_B_Part_3 17447 Q31_B_Part_4 19750 Q31_B_Part_5 16294 Q31_B_Part_6 19217 Q31_B_Part_7 19480 Q31_B_Part_8 19459 Q31_B_Part_9 19855 Q31_B_Part_10 19855 Q31_B_Part_11 19693 Q31_B_Part_12 19833 Q31_B_Part_13 19030 Q31_B_Part_14 17921 Q31_B_OTHER 19856 Q33_B_Part_1 17608 Q33_B_Part_2 17496 Q33_B_Part_3 16762 Q33_B_Part_4 18526 Q33_B_Part_5 17639 Q33_B_Part_6 16875 Q33_B_Part_7 17928 Q33_B_OTHER 19848 Q34_B_Part_1 17557 Q34_B_Part_2 19177 Q34_B_Part_3 19235 Q34_B_Part_4 19203 Q34_B_Part_5 19590 Q34_B_Part_6 17652 Q34_B_Part_7 17284 Q34_B_Part_8 18688 Q34_B_Part_9 19721 Q34_B_Part_10 19329 Q34_B_Part_11 19232 Q34_B_OTHER 19843 Q35_B_Part_1 19101 Q35_B_Part_2 18859 Q35_B_Part_3 19542 Q35_B_Part_4 19606 Q35_B_Part_5 16837 Q35_B_Part_6 19479 Q35_B_Part_7 19556 Q35_B_Part_8 19190 Q35_B_Part_9 19517 Q35_B_Part_10 16954 Q35_B_OTHER 19785 dtype: int64
# Create a dictionary for questions
Questions = {}
# Create list of questions
# Not very efficient, but keeps things ordered
qnums = list(dict.fromkeys([i.split('_')[0] for i in df1.columns]))
qnums
['Time from Start to Finish (seconds)', 'Q1', 'Q2', 'Q3', 'Q4', 'Q5', 'Q6', 'Q7', 'Q8', 'Q9', 'Q10', 'Q11', 'Q12', 'Q13', 'Q14', 'Q15', 'Q16', 'Q17', 'Q18', 'Q19', 'Q20', 'Q21', 'Q22', 'Q23', 'Q24', 'Q25', 'Q26', 'Q27', 'Q28', 'Q29', 'Q30', 'Q31', 'Q32', 'Q33', 'Q34', 'Q35', 'Q36', 'Q37', 'Q38', 'Q39']
# Add data for each question to key value pairs in dictionary
for question in qnums:
if question in ['Q1','Q2','Q3']: # Since we are using .startswith() below this prevents all questions that start with the values in the list (i.e. Q10, Q11, Q22, e.t.c)
Questions[question] = df1[question] #[1,2,3] from going in the key value pair (Example in vid)
else:
Questions[question] = df1[[col for col in df1.columns if col.startswith(question)]]
# Q1 histogram using px
fig = px.histogram(df1, x = 'Q1', title='Histogram showing the distribution of people by age group', labels={'Q1': 'Age group'})
fig.show()
# Heatmap using px for Q1 & Q6
fig = px.density_heatmap(df1, x='Q1', y='Q6', category_orders={'Q1':['18-21','22-24','25-29','30-34','35-39','40-44','45-49','50-54','55-59','60-69','70+'],'Q6':['I have never written code','< 1 years','1-2 years','3-5 years','5-10 years','10-20 years','20+ years']},
title='Heatmap of Coding experience vs Age group', labels={'Q1': 'Age group', 'Q6': 'Coding Experience'})
fig.show()
Questions['Q7']
| Q7_Part_1 | Q7_Part_2 | Q7_Part_3 | Q7_Part_4 | Q7_Part_5 | Q7_Part_6 | Q7_Part_7 | Q7_Part_8 | Q7_Part_9 | Q7_Part_10 | Q7_Part_11 | Q7_Part_12 | Q7_OTHER | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Python | R | SQL | C | NaN | NaN | Javascript | NaN | NaN | NaN | MATLAB | NaN | Other |
| 2 | Python | R | SQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 3 | NaN | NaN | NaN | NaN | NaN | Java | Javascript | NaN | NaN | Bash | NaN | NaN | NaN |
| 4 | Python | NaN | SQL | NaN | NaN | NaN | NaN | NaN | NaN | Bash | NaN | NaN | NaN |
| 5 | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 20032 | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 20033 | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 20034 | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 20035 | Python | NaN | SQL | C | NaN | Java | Javascript | NaN | NaN | NaN | NaN | NaN | NaN |
| 20036 | Python | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
20036 rows × 13 columns
# Q7 example for use with plotly.graph_objects.
Questions['Q7'].columns = list(Questions['Q7'].mode().iloc[0,:])
q7 = Questions['Q7'].count().reset_index()
q7.columns = ['language','Count']
q7 = q7.sort_values('Count', ascending = False)
fig = go.Figure([go.Bar(x = q7.language, y = q7.Count)])
# Customize aspect
fig.update_traces(marker_color='purple',
marker_line_width=1.5, opacity=0.8)
fig.update_layout(title_text='Number of people that have used each programming language')
fig.show()
# Create dictionary with role / data key value pairs
Roles = {}
for role in df1.Q5.unique():
Roles[role] = df1[df1.Q5 ==role]
Roles.keys()
dict_keys(['Student', 'Data Engineer', 'Software Engineer', 'Data Scientist', 'Data Analyst', 'Research Scientist', 'Other', 'Currently not employed', 'Statistician', 'Product/Project Manager', 'Machine Learning Engineer', nan, 'Business Analyst', 'DBA/Database Engineer'])
Roles['Student'].head()
| Time from Start to Finish (seconds) | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7_Part_1 | Q7_Part_2 | Q7_Part_3 | Q7_Part_4 | Q7_Part_5 | Q7_Part_6 | Q7_Part_7 | Q7_Part_8 | Q7_Part_9 | Q7_Part_10 | Q7_Part_11 | Q7_Part_12 | Q7_OTHER | Q8 | Q9_Part_1 | Q9_Part_2 | Q9_Part_3 | Q9_Part_4 | Q9_Part_5 | Q9_Part_6 | Q9_Part_7 | Q9_Part_8 | Q9_Part_9 | Q9_Part_10 | Q9_Part_11 | Q9_OTHER | Q10_Part_1 | Q10_Part_2 | Q10_Part_3 | Q10_Part_4 | Q10_Part_5 | Q10_Part_6 | Q10_Part_7 | Q10_Part_8 | Q10_Part_9 | Q10_Part_10 | Q10_Part_11 | Q10_Part_12 | Q10_Part_13 | Q10_OTHER | Q11 | Q12_Part_1 | Q12_Part_2 | Q12_Part_3 | Q12_OTHER | Q13 | Q14_Part_1 | Q14_Part_2 | Q14_Part_3 | Q14_Part_4 | Q14_Part_5 | Q14_Part_6 | Q14_Part_7 | Q14_Part_8 | Q14_Part_9 | Q14_Part_10 | Q14_Part_11 | Q14_OTHER | Q15 | Q16_Part_1 | Q16_Part_2 | Q16_Part_3 | Q16_Part_4 | Q16_Part_5 | Q16_Part_6 | Q16_Part_7 | Q16_Part_8 | Q16_Part_9 | Q16_Part_10 | Q16_Part_11 | Q16_Part_12 | Q16_Part_13 | Q16_Part_14 | Q16_Part_15 | Q16_OTHER | Q17_Part_1 | Q17_Part_2 | Q17_Part_3 | Q17_Part_4 | Q17_Part_5 | Q17_Part_6 | Q17_Part_7 | Q17_Part_8 | Q17_Part_9 | Q17_Part_10 | Q17_Part_11 | Q17_OTHER | Q18_Part_1 | Q18_Part_2 | Q18_Part_3 | Q18_Part_4 | Q18_Part_5 | Q18_Part_6 | Q18_OTHER | Q19_Part_1 | Q19_Part_2 | Q19_Part_3 | Q19_Part_4 | Q19_Part_5 | Q19_OTHER | Q20 | Q21 | Q22 | Q23_Part_1 | Q23_Part_2 | Q23_Part_3 | Q23_Part_4 | Q23_Part_5 | Q23_Part_6 | Q23_Part_7 | Q23_OTHER | Q24 | Q25 | Q26_A_Part_1 | Q26_A_Part_2 | Q26_A_Part_3 | Q26_A_Part_4 | Q26_A_Part_5 | Q26_A_Part_6 | Q26_A_Part_7 | Q26_A_Part_8 | Q26_A_Part_9 | Q26_A_Part_10 | Q26_A_Part_11 | Q26_A_OTHER | Q27_A_Part_1 | Q27_A_Part_2 | Q27_A_Part_3 | Q27_A_Part_4 | Q27_A_Part_5 | Q27_A_Part_6 | Q27_A_Part_7 | Q27_A_Part_8 | Q27_A_Part_9 | Q27_A_Part_10 | Q27_A_Part_11 | Q27_A_OTHER | Q28_A_Part_1 | Q28_A_Part_2 | Q28_A_Part_3 | Q28_A_Part_4 | Q28_A_Part_5 | Q28_A_Part_6 | Q28_A_Part_7 | Q28_A_Part_8 | Q28_A_Part_9 | Q28_A_Part_10 | Q28_A_OTHER | Q29_A_Part_1 | Q29_A_Part_2 | Q29_A_Part_3 | Q29_A_Part_4 | Q29_A_Part_5 | Q29_A_Part_6 | Q29_A_Part_7 | Q29_A_Part_8 | Q29_A_Part_9 | Q29_A_Part_10 | Q29_A_Part_11 | Q29_A_Part_12 | Q29_A_Part_13 | Q29_A_Part_14 | Q29_A_Part_15 | Q29_A_Part_16 | Q29_A_Part_17 | Q29_A_OTHER | Q30 | Q31_A_Part_1 | Q31_A_Part_2 | Q31_A_Part_3 | Q31_A_Part_4 | Q31_A_Part_5 | Q31_A_Part_6 | Q31_A_Part_7 | Q31_A_Part_8 | Q31_A_Part_9 | Q31_A_Part_10 | Q31_A_Part_11 | Q31_A_Part_12 | Q31_A_Part_13 | Q31_A_Part_14 | Q31_A_OTHER | Q32 | Q33_A_Part_1 | Q33_A_Part_2 | Q33_A_Part_3 | Q33_A_Part_4 | Q33_A_Part_5 | Q33_A_Part_6 | Q33_A_Part_7 | Q33_A_OTHER | Q34_A_Part_1 | Q34_A_Part_2 | Q34_A_Part_3 | Q34_A_Part_4 | Q34_A_Part_5 | Q34_A_Part_6 | Q34_A_Part_7 | Q34_A_Part_8 | Q34_A_Part_9 | Q34_A_Part_10 | Q34_A_Part_11 | Q34_A_OTHER | Q35_A_Part_1 | Q35_A_Part_2 | Q35_A_Part_3 | Q35_A_Part_4 | Q35_A_Part_5 | Q35_A_Part_6 | Q35_A_Part_7 | Q35_A_Part_8 | Q35_A_Part_9 | Q35_A_Part_10 | Q35_A_OTHER | Q36_Part_1 | Q36_Part_2 | Q36_Part_3 | Q36_Part_4 | Q36_Part_5 | Q36_Part_6 | Q36_Part_7 | Q36_Part_8 | Q36_Part_9 | Q36_OTHER | Q37_Part_1 | Q37_Part_2 | Q37_Part_3 | Q37_Part_4 | Q37_Part_5 | Q37_Part_6 | Q37_Part_7 | Q37_Part_8 | Q37_Part_9 | Q37_Part_10 | Q37_Part_11 | Q37_OTHER | Q38 | Q39_Part_1 | Q39_Part_2 | Q39_Part_3 | Q39_Part_4 | Q39_Part_5 | Q39_Part_6 | Q39_Part_7 | Q39_Part_8 | Q39_Part_9 | Q39_Part_10 | Q39_Part_11 | Q39_OTHER | Q26_B_Part_1 | Q26_B_Part_2 | Q26_B_Part_3 | Q26_B_Part_4 | Q26_B_Part_5 | Q26_B_Part_6 | Q26_B_Part_7 | Q26_B_Part_8 | Q26_B_Part_9 | Q26_B_Part_10 | Q26_B_Part_11 | Q26_B_OTHER | Q27_B_Part_1 | Q27_B_Part_2 | Q27_B_Part_3 | Q27_B_Part_4 | Q27_B_Part_5 | Q27_B_Part_6 | Q27_B_Part_7 | Q27_B_Part_8 | Q27_B_Part_9 | Q27_B_Part_10 | Q27_B_Part_11 | Q27_B_OTHER | Q28_B_Part_1 | Q28_B_Part_2 | Q28_B_Part_3 | Q28_B_Part_4 | Q28_B_Part_5 | Q28_B_Part_6 | Q28_B_Part_7 | Q28_B_Part_8 | Q28_B_Part_9 | Q28_B_Part_10 | Q28_B_OTHER | Q29_B_Part_1 | Q29_B_Part_2 | Q29_B_Part_3 | Q29_B_Part_4 | Q29_B_Part_5 | Q29_B_Part_6 | Q29_B_Part_7 | Q29_B_Part_8 | Q29_B_Part_9 | Q29_B_Part_10 | Q29_B_Part_11 | Q29_B_Part_12 | Q29_B_Part_13 | Q29_B_Part_14 | Q29_B_Part_15 | Q29_B_Part_16 | Q29_B_Part_17 | Q29_B_OTHER | Q31_B_Part_1 | Q31_B_Part_2 | Q31_B_Part_3 | Q31_B_Part_4 | Q31_B_Part_5 | Q31_B_Part_6 | Q31_B_Part_7 | Q31_B_Part_8 | Q31_B_Part_9 | Q31_B_Part_10 | Q31_B_Part_11 | Q31_B_Part_12 | Q31_B_Part_13 | Q31_B_Part_14 | Q31_B_OTHER | Q33_B_Part_1 | Q33_B_Part_2 | Q33_B_Part_3 | Q33_B_Part_4 | Q33_B_Part_5 | Q33_B_Part_6 | Q33_B_Part_7 | Q33_B_OTHER | Q34_B_Part_1 | Q34_B_Part_2 | Q34_B_Part_3 | Q34_B_Part_4 | Q34_B_Part_5 | Q34_B_Part_6 | Q34_B_Part_7 | Q34_B_Part_8 | Q34_B_Part_9 | Q34_B_Part_10 | Q34_B_Part_11 | Q34_B_OTHER | Q35_B_Part_1 | Q35_B_Part_2 | Q35_B_Part_3 | Q35_B_Part_4 | Q35_B_Part_5 | Q35_B_Part_6 | Q35_B_Part_7 | Q35_B_Part_8 | Q35_B_Part_9 | Q35_B_Part_10 | Q35_B_OTHER | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1838 | 35-39 | Man | Colombia | Doctoral degree | Student | 5-10 years | Python | R | SQL | C | NaN | NaN | Javascript | NaN | NaN | NaN | MATLAB | NaN | Other | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | NaN | NaN | Visual Studio Code (VSCode) | NaN | Spyder | NaN | NaN | NaN | NaN | NaN | NaN | Kaggle Notebooks | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A cloud computing platform (AWS, Azure, GCP, h... | GPUs | NaN | NaN | NaN | 2-5 times | Matplotlib | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Geoplotlib | NaN | NaN | NaN | 1-2 years | NaN | TensorFlow | Keras | NaN | NaN | NaN | Xgboost | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | Bayesian Approaches | NaN | Dense Neural Networks (MLPs, etc) | Convolutional Neural Networks | NaN | Recurrent Neural Networks | NaN | NaN | NaN | NaN | NaN | NaN | Image classification and other general purpose... | NaN | NaN | NaN | Word embeddings/vectors (GLoVe, fastText, word... | NaN | Contextualized embeddings (ELMo, CoVe) | Transformer language models (GPT-3, BERT, XLne... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | Kaggle Learn Courses | NaN | NaN | NaN | NaN | NaN | NaN | University Courses (resulting in a university ... | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | NaN | NaN | Kaggle (notebooks, forums, etc) | NaN | NaN | NaN | NaN | Journal Publications (peer-reviewed journals, ... | NaN | NaN | NaN | Amazon Web Services (AWS) | Microsoft Azure | Google Cloud Platform (GCP) | IBM Cloud / Red Hat | NaN | SAP Cloud | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Azure Cloud Services | Microsoft Azure Container Instances | Azure Functions | Google Cloud Compute Engine | Google Cloud Functions | Google Cloud Run | Google Cloud App Engine | NaN | NaN | Amazon SageMaker | Amazon Forecast | Amazon Rekognition | Azure Machine Learning Studio | Azure Cognitive Services | Google Cloud AI Platform / Google Cloud ML En... | Google Cloud Video AI | Google Cloud Natural Language | Google Cloud Vision AI | NaN | NaN | NaN | NaN | NaN | NaN | MongoDB | NaN | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | Google Cloud BigQuery | Google Cloud SQL | Google Cloud Firestore | NaN | NaN | Microsoft Power BI | Amazon QuickSight | Google Data Studio | NaN | Tableau | NaN | NaN | NaN | NaN | NaN | NaN | NaN | SAP Analytics Cloud | NaN | NaN | Automated data augmentation (e.g. imgaug, albu... | NaN | NaN | NaN | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google C... | NaN | NaN | Google Cloud AutoML | NaN | Databricks AutoML | NaN | NaN | Auto-Keras | Auto-Sklearn | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | TensorBoard | NaN | NaN | NaN | NaN | NaN | NaN |
| 7 | 748 | 22-24 | Man | Brazil | Bachelor’s degree | Student | 3-5 years | Python | R | NaN | C | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | RStudio | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Kaggle Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A personal computer or laptop | NaN | NaN | None | NaN | Never | Matplotlib | Seaborn | NaN | Ggplot / ggplot2 | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Under 1 year | Scikit-learn | NaN | NaN | PyTorch | Fast.ai | NaN | Xgboost | LightGBM | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Linear or Logistic Regression | Decision Trees or Random Forests | Gradient Boosting Machines (xgboost, lightgbm,... | NaN | NaN | NaN | Convolutional Neural Networks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Image classification and other general purpose... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Coursera | NaN | NaN | NaN | Fast.ai | Udacity | Udemy | NaN | NaN | NaN | NaN | NaN | Basic statistical software (Microsoft Excel, G... | NaN | NaN | Reddit (r/machinelearning, etc) | Kaggle (notebooks, forums, etc) | NaN | YouTube (Kaggle YouTube, Cloud AI Adventures, ... | NaN | NaN | NaN | NaN | NaN | NaN | Amazon Web Services (AWS) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | AWS Lambda | NaN | Azure Cloud Services | Microsoft Azure Container Instances | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | MySQL | PostgresSQL | SQLite | NaN | NaN | Snowflake | NaN | Microsoft SQL Server | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Microsoft Power BI | NaN | NaN | NaN | Tableau | NaN | NaN | Qlik | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Automated data augmentation (e.g. imgaug, albu... | Automated feature engineering/selection (e.g. ... | Automated model selection (e.g. auto-sklearn, ... | NaN | Automated hyperparameter tuning (e.g. hyperopt... | Automation of full ML pipelines (e.g. Google C... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Auto-Sklearn | NaN | NaN | NaN | NaN | NaN | Neptune.ai | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 8 | 171196 | 25-29 | Woman | China | Master’s degree | Student | < 1 years | NaN | R | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | R | NaN | RStudio | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Google Cloud AI Platform Notebooks | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | Other | 2-5 times | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | 1-2 years | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Convolutional Neural Networks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Generative Networks (GAN, VAE, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Google Cloud Platform (GCP) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Azure Cloud Services | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Azure Cognitive Services | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Google Cloud Firestore | NaN | NaN | NaN | Amazon QuickSight | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 10 | 150 | 22-24 | Man | China | No formal education past high school | Student | < 1 years | Python | NaN | SQL | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | NaN | NaN | NaN | PyCharm | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 11 | 7469 | 18-21 | Man | India | Bachelor’s degree | Student | 1-2 years | Python | R | SQL | C | NaN | Java | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Python | Jupyter (JupyterLab, Jupyter Notebooks, etc) | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Colab Notebooks | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | A personal computer or laptop | NaN | NaN | None | NaN | Never | Matplotlib | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | I do not use machine learning methods | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | None | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
# All education graph
edu = df1.Q4.value_counts()
edu
Master’s degree 7859 Bachelor’s degree 6978 Doctoral degree 2302 Some college/university study without earning a bachelor’s degree 1092 Professional degree 699 I prefer not to answer 399 No formal education past high school 240 Name: Q4, dtype: int64
fig = go.Figure([go.Bar(x=edu.index, y=edu.values)])
fig.update_layout(title_text='Highest level of education of the survey participants')
fig.update_traces(marker_color='red', marker_line_width=1.5, opacity=0.8)
fig.show()
# Education for just Data scientists
ds_edu = Roles['Data Scientist'].Q4.value_counts()
fig = go.Figure([go.Bar(x= ds_edu.index, y=ds_edu.values)])
fig.update_layout(title_text='Highest level of education of the Data Scientist survey participants')
fig.update_traces(marker_color='green', marker_line_width=1.5, opacity=0.8)
fig.show()
# Education for just Data analyst
da_edu = Roles['Data Analyst'].Q4.value_counts()
fig = go.Figure([go.Bar(x= da_edu.index, y=da_edu.values)])
fig.update_layout(title_text='Highest level of education of the Data Analyst survey participants')
fig.update_traces(marker_color='cyan', marker_line_width=1.5, opacity=1)
fig.show()
# Education for just Software Engineers
se_edu = Roles['Software Engineer'].Q4.value_counts()
fig = go.Figure([go.Bar(x= se_edu.index, y=se_edu.values)])
fig.update_layout(title_text='Highest level of education of the Software Engineer survey participants')
fig.update_traces(marker_color='yellow', marker_line_width=1.5, opacity=1)
fig.show()
# Education for just Product/Project Manager
pm_edu = Roles['Product/Project Manager'].Q4.value_counts()
fig = go.Figure([go.Bar(x= pm_edu.index, y=pm_edu.values)])
fig.update_layout(title_text='Highest level of education of the Product/Project Manager survey participants')
fig.update_traces(marker_color='orange', marker_line_width=1.5, opacity=1)
fig.show()
fig = go.Figure()
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text="Comparing different professions to educational background")))
# Set up ONE trace. This is the first graph that displays before you select an option from the dropdown.
# fig.add_trace(go.Bar(x=edu.index, y=edu.values))
fig.add_trace(go.Bar(x= ds_edu.index, y=ds_edu.values))
buttons = []
positions = ['Student', 'Data Engineer', 'Software Engineer', 'Data Scientist', 'Data Analyst', 'Research Scientist',
'Statistician', 'Product/Project Manager', 'Machine Learning Engineer', 'Business Analyst', 'DBA/Database Engineer']
# button with one option for each dataframe
buttons.append(dict(method='restyle',
label='Data Scientist',
visible=True,
args=[{'y':[Roles['Data Scientist'].Q4.value_counts().values],
'x':[Roles['Data Scientist'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Student',
visible=True,
args=[{'y':[Roles['Student'].Q4.value_counts().values],
'x':[Roles['Student'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Data Analyst',
visible=True,
args=[{'y':[Roles['Data Analyst'].Q4.value_counts().values],
'x':[Roles['Data Analyst'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Data Engineer',
visible=True,
args=[{'y':[Roles['Data Engineer'].Q4.value_counts().values],
'x':[Roles['Data Engineer'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Software Engineer',
visible=True,
args=[{'y':[Roles['Software Engineer'].Q4.value_counts().values],
'x':[Roles['Software Engineer'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Product/Project Manager',
visible=True,
args=[{'y':[Roles['Product/Project Manager'].Q4.value_counts().values],
'x':[Roles['Product/Project Manager'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
buttons.append(dict(method='restyle',
label='Research Scientist',
visible=True,
args=[{'y':[Roles['Research Scientist'].Q4.value_counts().values],
'x':[Roles['Research Scientist'].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
# some adjustments to the updatemenus
updatemenu = []
your_menu = dict()
updatemenu.append(your_menu)
updatemenu[0]['buttons'] = buttons
updatemenu[0]['direction'] = 'down'
updatemenu[0]['showactive'] = True
# add dropdown menus to the figure
fig.update_layout(showlegend=False, updatemenus=updatemenu)
fig.show()
# Add title
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text="Comparing Education by Position")))
# Change to percent of group rather than raw numbers
fig.add_trace(go.Bar(name='Role Selection', x=edu.index, y=(edu.values / edu.values.sum())))
# Added another trace, this is the second series of bars
fig.add_trace(go.Bar(name='All Data', x=edu.index, y=(edu.values / edu.values.sum())))
buttons = []
# Add all roles with a loop, in previous we added them individually.
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label= i,
visible=True,
args=[{'y':[Roles[i].Q4.value_counts().values / Roles[i].Q4.value_counts().values.sum()],
'x':[Roles[i].Q4.value_counts().index],
'type':'bar'}, [0]],
)
)
updatemenu = []
your_menu = {}
updatemenu.append(your_menu)
updatemenu[0]['buttons'] = buttons
updatemenu[0]['direction'] = 'down'
updatemenu[0]['showactive'] = True
# add dropdown menus to the figure
fig.update_layout(updatemenus=updatemenu)
#order axes https://plotly.com/python/categorical-axes/
fig.update_xaxes(categoryorder= 'array', categoryarray= ["Doctoral degree",'Master’s degree','Bachelor’s degree','Some college/university study without earning a bachelor’s degree',"Professional degree","No formal education past high school","I prefer not to answer"])
fig.show()
fig = go.Figure(layout=go.Layout(title=go.layout.Title(text="Comparing Education by Position")))
# Changed from Role selection to selection 1
fig.add_trace(go.Bar(name='Selection 1', x=edu.index, y=(edu.values / edu.values.sum())))
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label= 'All Samples',
visible=True,
args=[{'y':[df1.Q4.value_counts().values / df1.Q4.value_counts().values.sum()],
'x':[df1.Q4.value_counts().index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label= i,
visible=True,
args=[{'y':[Roles[i].Q4.value_counts().values / Roles[i].Q4.value_counts().values.sum()],
'x':[Roles[i].Q4.value_counts().index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name= 'Selection 2',x=edu.index, y=(edu.values / edu.values.sum())))
buttons2 = []
#added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[df1.Q4.value_counts().values / df1.Q4.value_counts().values.sum()],
'x':[df1.Q4.value_counts().index],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons2.append(dict(method='restyle',
label= i,
visible=True,
args=[{'y':[Roles[i].Q4.value_counts().values / Roles[i].Q4.value_counts().values.sum()],
'x':[Roles[i].Q4.value_counts().index],
'type':'bar'}, [1]], # the [1] at the end lets us know they are for the first trace
) #literally figured that out by just experimenting
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.23
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.11,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.71,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout(updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.15, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.65, xref="paper", y=1.15,
yref="paper", showarrow=False)
])
fig.update_xaxes(categoryorder= 'array', categoryarray= ["Doctoral degree",'Master’s degree','Bachelor’s degree','Some college/university study without earning a bachelor’s degree',"Professional degree","No formal education past high school","I prefer not to answer"])
fig.show()
Questions['Q7']['Roles'] = df1.Q5
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text="Comparing Programming Languages by Position")))
# Changed from role selection to selection 1
fig.add_trace(go.Bar(name='Selection 1', x=q7.language, y=(q7.Count / q7.Count.sum())))
def filter_bars(role, data):
df = data[data['Roles'] == role]
q7 = df.drop('Roles', axis=1).count().reset_index()
q7.columns = ['language','Count']
return (q7.language, q7.Count / q7.Count.sum())
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(q7.Count / q7.Count.sum())],
'x':[q7.language],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[filter_bars(i, Questions['Q7'])[1].values],
'x':[filter_bars(i, Questions['Q7'])[0].values],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name= 'Selection 2', x= q7.language, y=(q7.Count/ q7.Count.sum())))
buttons2 = []
# Added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(q7.Count / q7.Count.sum())],
'x':[q7.language],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
for j in list(Roles.keys())[1:]:
buttons2.append(dict(method='restyle',
label=j,
visible=True,
args=[{'y':[filter_bars(j, Questions['Q7'])[1].values],
'x':[filter_bars(j, Questions['Q7'])[0].values],
'type':'bar'}, [1]], # the [1] at the end lets us know they are for the first trace
)
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.15
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.1,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.50,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout( updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.1, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.45, xref="paper", y=1.1,
yref="paper", showarrow=False)
])
fig.update_xaxes(categoryorder= 'array', categoryarray= q7.language)
fig.show()
<ipython-input-28-8f56eac96484>:1: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
# Same process. Just substitute the question numbers where necessary.
Questions['Q9'].columns = list(Questions['Q9'].mode().iloc[0,:])
# Questions['Q9'].drop('Student', axis=1, inplace=True)
q9 = Questions['Q9'].count().reset_index()
q9.columns = ['IDE','Count']
q9 = q9.sort_values('Count', ascending = False)
Questions['Q9']['Roles'] = df1.Q5
fig = go.Figure(layout=go.Layout(title=go.layout.Title(text="Comparing IDEs by Position")))
# Changed from role selection to selection 1
fig.add_trace(go.Bar(name='Selection 1', x=q9.IDE, y=(q9.Count / q9.Count.sum())))
def filter_bars9(role, data):
df = data[data['Roles'] == role]
q9 = df.drop('Roles', axis=1).count().reset_index()
q9.columns = ['language','Count']
return (q9.language, q9.Count / q9.Count.sum())
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(q9.Count / q9.Count.sum())],
'x':[q9.IDE],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[filter_bars9(i, Questions['Q9'])[1].values],
'x':[filter_bars9(i, Questions['Q9'])[0].values],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name='Selection 2', x=q9.IDE, y=(q9.Count / q9.Count.sum())))
buttons2 = []
# Added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(q9.Count / q9.Count.sum())],
'x':[q9.IDE],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
for j in list(Roles.keys())[1:]:
buttons2.append(dict(method='restyle',
label=j,
visible=True,
args=[{'y':[filter_bars9(j, Questions['Q9'])[1].values],
'x':[filter_bars9(j, Questions['Q9'])[0].values],
'type':'bar'}, [1]], # the [1] at the end lets us know they are for the first trace
)
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.18
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.1,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.50,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout( updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.1, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.45, xref="paper", y=1.1,
yref="paper", showarrow=False)
])
fig.update_xaxes(categoryorder= 'array', categoryarray= q9.IDE)
fig.show()
<ipython-input-29-a500ea1c8acd>:9: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
edu2 = df1.Q8.value_counts()
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text="Recommended Programming Languages by Position")))
# Changed from role selection to selection 1
fig.add_trace(go.Bar(name='Selection 1', x=edu2.index, y=(edu2.values / edu2.values.sum())))
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label= 'All Samples',
visible=True,
args=[{'y':[df1.Q8.value_counts().values / df1.Q8.value_counts().values.sum()],
'x':[df1.Q8.value_counts().index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[Roles[i].Q8.value_counts().values / Roles[i].Q8.value_counts().values.sum()],
'x':[Roles[i].Q8.value_counts().index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name='Selection 2',x=edu2.index, y=(edu2.values / edu2.values.sum())))
buttons2 = []
# Added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[df1.Q8.value_counts().values / df1.Q8.value_counts().values.sum()],
'x':[df1.Q8.value_counts().index],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons2.append(dict(method='restyle',
label= i,
visible=True,
args=[{'y':[Roles[i].Q8.value_counts().values / Roles[i].Q8.value_counts().values.sum()],
'x':[Roles[i].Q8.value_counts().index],
'type':'bar'}, [1]], # the [1] at the end lets us know they are for the first trace
)
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.15
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.1,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.50,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout( updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.1, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.45, xref="paper", y=1.1,
yref="paper", showarrow=False)
])
# fig.update_xaxes(categoryorder= 'array', categoryarray= ["Doctoral degree",'Master’s degree','Bachelor’s degree','Some college/university study without earning a bachelor’s degree',"Professional degree","No formal education past high school","I prefer not to answer"])
fig.show()
def filter_bars(role, data):
df = data[data['Roles'] == role]
q = df.drop('Roles', axis=1).count().reset_index()
q.columns = ['language','Count']
return (q.language, q.Count/q.Count.sum())
def build_graph(q_number, Roles, Title):
"""Create dropdown visual with question data"""
if isinstance(q_number, pd.DataFrame):
qnumber = q_number.copy()
qnumber.columns = list(qnumber.mode().iloc[0,:])
qcnt = qnumber.count().reset_index()
qcnt.columns = ['feature','cnt']
qcnt = qcnt.sort_values('cnt', ascending = False)
qnumber['Roles'] = df1.Q5
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text=Title)))
# Changed from role selection to selection 1
fig.add_trace(go.Bar(name= 'Selection 1', x= qcnt.feature, y=(qcnt.cnt/ qcnt.cnt.sum())))
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(qcnt.cnt / qcnt.cnt.sum())],
'x':[qcnt.feature],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
buttons.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[filter_bars(i, qnumber)[1].values],
'x':[filter_bars(i, qnumber)[0].values],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name='Selection 2', x=qcnt.feature, y=(qcnt.cnt / qcnt.cnt.sum())))
buttons2 = []
# Added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(qcnt.cnt / qcnt.cnt.sum())],
'x':[qcnt.feature],
'type':'bar'}, [1]],
)
)
for i in list(Roles.keys())[1:]:
buttons2.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[filter_bars(i, qnumber)[1].values],
'x':[filter_bars(i, qnumber)[0].values],
'type':'bar'}, [1]],
)
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.15
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.1,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.50,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout( updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.1, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.45, xref="paper", y=1.1,
yref="paper", showarrow=False)
])
fig.update_xaxes(categoryorder= 'array', categoryarray= qcnt.feature)
fig.show()
else:
qnumber= q_number.copy()
vcnts = qnumber.value_counts()
qnumber = pd.concat([qnumber, df1.Q5], axis=1)
qnumber.columns = ['feature','Roles']
fig = go.Figure(layout=go.Layout(title= go.layout.Title(text=Title)))
# Changed from role selection to selection 1
fig.add_trace(go.Bar(name='Selection 1', x=vcnts.index, y=(vcnts.values / vcnts.values.sum())))
buttons = []
# Added button for all data comparison
buttons.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[vcnts.values/ vcnts.values.sum()],
'x':[vcnts.index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
qrole = qnumber[qnumber['Roles']==i].feature.value_counts()
buttons.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[qrole.values / qrole.values.sum()],
'x':[qrole.index],
'type':'bar'}, [0]], # the [0] at the end lets us know they are for the first trace
)
)
fig.add_trace(go.Bar(name='Selection 2',x=vcnts.index, y=(vcnts.values / vcnts.values.sum())))
buttons2 = []
# Added button for all data comparison
buttons2.append(dict(method='restyle',
label='All Samples',
visible=True,
args=[{'y':[(vcnts.values / vcnts.values.sum())],
'x':[vcnts.index],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
for i in list(Roles.keys())[1:]:
qrole = qnumber[qnumber['Roles']==i].feature.value_counts()
buttons2.append(dict(method='restyle',
label=i,
visible=True,
args=[{'y':[qrole.values / qrole.values.sum()],
'x':[qrole.index],
'type':'bar'}, [1]], # the [0] at the end lets us know they are for the first trace
)
)
# Adjusted dropdown placement
# Found out updatemenus take a dictionary of buttons and allow you to format how the dropdowns look etc.
# https://plotly.com/python/dropdowns/
button_layer_1_height = 1.15
updatemenus = list([
dict(buttons=buttons,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.1,
xanchor="left",
y=button_layer_1_height,
yanchor="top"),
dict(buttons=buttons2,
direction="down",
pad={"r": 10, "t": 10},
showactive=True,
x=0.50,
xanchor="left",
y=button_layer_1_height,
yanchor="top")])
fig.update_layout( updatemenus=updatemenus)
# Added annotations next to dropdowns
fig.update_layout(
annotations=[
dict(text="Selection 1", x=0, xref="paper", y=1.1, yref="paper",
align="left", showarrow=False),
dict(text="Selection 2", x=0.45, xref="paper", y=1.1,
yref="paper", showarrow=False)
])
fig.update_xaxes(categoryorder= 'array', categoryarray= vcnts.index)
fig.show()
return
build_graph(Questions['Q1'],Roles,'Age by Position')
build_graph(Questions['Q12'],Roles,'Hardware by position')